mirror of
https://github.com/boostorg/fusion.git
synced 2026-04-29 02:03:35 +02:00
adds documentation for functional module
[SVN r36959]
This commit is contained in:
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>Acknowledgements</title>
|
||||
<link rel="stylesheet" href="../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="prev" href="change_log.html" title="Change log">
|
||||
|
||||
@@ -3,12 +3,12 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>Algorithms</title>
|
||||
<link rel="stylesheet" href="../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="prev" href="sequences/operators/comparison/greater_than_equal.html" title="greater
|
||||
than equal">
|
||||
<link rel="next" href="algorithms/concepts.html" title="Concepts">
|
||||
<link rel="next" href="algorithms/iteration.html" title="Iteration">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
||||
<table cellpadding="2" width="100%">
|
||||
@@ -21,33 +21,100 @@
|
||||
</table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="sequences/operators/comparison/greater_than_equal.html"><img src="../images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../images/home.png" alt="Home"></a><a accesskey="n" href="algorithms/concepts.html"><img src="../images/next.png" alt="Next"></a>
|
||||
<a accesskey="p" href="sequences/operators/comparison/greater_than_equal.html"><img src="../images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../images/home.png" alt="Home"></a><a accesskey="n" href="algorithms/iteration.html"><img src="../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
<div class="section" lang="en">
|
||||
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
|
||||
<a name="fusion.algorithms"></a><a href="algorithms.html" title="Algorithms">Algorithms</a></h2></div></div></div>
|
||||
<div class="toc"><dl>
|
||||
<dt><span class="section"><a href="algorithms/concepts.html">Concepts</a></span></dt>
|
||||
<dd><dl><dt><span class="section"><a href="algorithms/concepts/poly.html"> Polymorphic Function
|
||||
Object</a></span></dt></dl></dd>
|
||||
<dt><span class="section"><a href="algorithms/iteration.html">Iteration</a></span></dt>
|
||||
<dd><dl>
|
||||
<dt><span class="section"><a href="algorithms/iteration/functions.html">Functions</a></span></dt>
|
||||
<dd><dl>
|
||||
<dt><span class="section"><a href="algorithms/iteration/functions/fold.html">fold</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/iteration/functions/accumulate.html">accumulate</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/iteration/functions/for_each.html">for_each</a></span></dt>
|
||||
</dl></dd>
|
||||
<dt><span class="section"><a href="algorithms/iteration/metafunctions.html">Metafunctions</a></span></dt>
|
||||
<dd><dl>
|
||||
<dt><span class="section"><a href="algorithms/iteration/metafunctions/fold.html">fold</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/iteration/metafunctions/accumulate.html">accumulate</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/iteration/metafunctions/for_each.html">for_each</a></span></dt>
|
||||
</dl></dd>
|
||||
</dl></dd>
|
||||
<dt><span class="section"><a href="algorithms/query.html">Query</a></span></dt>
|
||||
<dd><dl>
|
||||
<dt><span class="section"><a href="algorithms/query/functions.html">Functions</a></span></dt>
|
||||
<dd><dl>
|
||||
<dt><span class="section"><a href="algorithms/query/functions/any.html">any</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/query/functions/all.html">all</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/query/functions/none.html">none</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/query/functions/find.html">find</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/query/functions/find_if.html">find_if</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/query/functions/count.html">count</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/query/functions/count_if.html">count_if</a></span></dt>
|
||||
</dl></dd>
|
||||
<dt><span class="section"><a href="algorithms/query/metafunctions.html">Metafunctions</a></span></dt>
|
||||
<dd><dl>
|
||||
<dt><span class="section"><a href="algorithms/query/metafunctions/any.html">any</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/query/metafunctions/all.html">all</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/query/metafunctions/none.html">none</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/query/metafunctions/find.html">find</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/query/metafunctions/find_if.html">find_if</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/query/metafunctions/count.html">count</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/query/metafunctions/count_if.html">count_if</a></span></dt>
|
||||
</dl></dd>
|
||||
</dl></dd>
|
||||
<dt><span class="section"><a href="algorithms/transformation.html">Transformation</a></span></dt>
|
||||
<dd><dl>
|
||||
<dt><span class="section"><a href="algorithms/transformation/functions.html">Functions</a></span></dt>
|
||||
<dd><dl>
|
||||
<dt><span class="section"><a href="algorithms/transformation/functions/filter.html">filter</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/transformation/functions/filter_if.html">filter_if</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/transformation/functions/transform.html">transform</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/transformation/functions/replace.html">replace</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/transformation/functions/replace_if.html">replace_if</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/transformation/functions/remove.html">remove</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/transformation/functions/remove_if.html">remove_if</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/transformation/functions/reverse.html">reverse</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/transformation/functions/clear.html">clear</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/transformation/functions/erase.html">erase</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/transformation/functions/erase_key.html">erase_key</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/transformation/functions/insert.html">insert</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/transformation/functions/insert_range.html">insert_range</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/transformation/functions/join.html">join</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/transformation/functions/zip.html">zip</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/transformation/functions/pop_back.html">pop_back</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/transformation/functions/pop_front.html">pop_front</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/transformation/functions/push_back.html">push_back</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/transformation/functions/push_front.html">push_front</a></span></dt>
|
||||
</dl></dd>
|
||||
<dt><span class="section"><a href="algorithms/transformation/metafunctions.html">Metafunctions</a></span></dt>
|
||||
<dd><dl>
|
||||
<dt><span class="section"><a href="algorithms/transformation/metafunctions/filter.html">filter</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/transformation/metafunctions/filter_if.html">filter_if</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/transformation/metafunctions/transform.html">transform</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/transformation/metafunctions/replace.html">replace</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/transformation/metafunctions/replace_if.html">replace_if</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/transformation/metafunctions/remove.html">remove</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/transformation/metafunctions/remove_if.html">remove_if</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/transformation/metafunctions/reverse.html">reverse</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/transformation/metafunctions/clear.html">clear</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/transformation/metafunctions/erase.html">erase</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/transformation/metafunctions/erase_key.html">erase_key</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/transformation/metafunctions/insert.html">insert</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/transformation/metafunctions/insert_range.html">insert_range</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/transformation/metafunctions/join.html">join</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/transformation/metafunctions/zip.html">zip</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/transformation/metafunctions/pop_back.html">pop_back</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/transformation/metafunctions/pop_front.html">pop_front</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/transformation/metafunctions/push_back.html">push_back</a></span></dt>
|
||||
<dt><span class="section"><a href="algorithms/transformation/metafunctions/push_front.html">push_front</a></span></dt>
|
||||
</dl></dd>
|
||||
</dl></dd>
|
||||
</dl></div>
|
||||
<a name="fusion.algorithms.lazy_evaluation"></a><h3>
|
||||
<a name="id552698"></a>
|
||||
<a name="id1080217"></a>
|
||||
<a href="algorithms.html#fusion.algorithms.lazy_evaluation">Lazy Evaluation</a>
|
||||
</h3>
|
||||
<p>
|
||||
@@ -61,39 +128,39 @@
|
||||
fusion algorithms are functional in nature such that algorithms are non mutating
|
||||
(no side effects). However, due to the high cost of returning full sequences
|
||||
such as vectors and lists, <span class="emphasis"><em>Views</em></span> are returned from Fusion
|
||||
algorithms instead. For example, the <a href="algorithms/transformation/functions/transform.html" title="transform"><tt class="computeroutput"><span class="identifier">transform</span></tt></a> algorithm does not actually
|
||||
return a transformed version of the original sequence. <a href="algorithms/transformation/functions/transform.html" title="transform"><tt class="computeroutput"><span class="identifier">transform</span></tt></a> returns a <a href="sequences/views/transform_view.html" title="transform_view"><tt class="computeroutput"><span class="identifier">transform_view</span></tt></a>. This view holds a
|
||||
algorithms instead. For example, the <a href="algorithms/transformation/functions/transform.html" title="transform"><code class="computeroutput"><span class="identifier">transform</span></code></a> algorithm does not actually
|
||||
return a transformed version of the original sequence. <a href="algorithms/transformation/functions/transform.html" title="transform"><code class="computeroutput"><span class="identifier">transform</span></code></a> returns a <a href="sequences/views/transform_view.html" title="transform_view"><code class="computeroutput"><span class="identifier">transform_view</span></code></a>. This view holds a
|
||||
reference to the original sequence plus the transform function. Iteration over
|
||||
the <a href="sequences/views/transform_view.html" title="transform_view"><tt class="computeroutput"><span class="identifier">transform_view</span></tt></a>
|
||||
the <a href="sequences/views/transform_view.html" title="transform_view"><code class="computeroutput"><span class="identifier">transform_view</span></code></a>
|
||||
will apply the transform function over the sequence elements on demand. This
|
||||
<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>
|
||||
<a name="fusion.algorithms.sequence_extension"></a><h3>
|
||||
<a name="id552838"></a>
|
||||
<a name="id1080344"></a>
|
||||
<a href="algorithms.html#fusion.algorithms.sequence_extension">Sequence Extension</a>
|
||||
</h3>
|
||||
<p>
|
||||
The <span class="emphasis"><em>lazy</em></span> evaluation scheme where <a href="algorithms.html" title="Algorithms">Algorithms</a>
|
||||
return <a href="sequences/views.html" title="Views">Views</a> also allows operations
|
||||
such as <a href="algorithms/transformation/functions/push_back.html" title="push_back"><tt class="computeroutput"><span class="identifier">push_back</span></tt></a> to be totally generic. In
|
||||
Fusion, <a href="algorithms/transformation/functions/push_back.html" title="push_back"><tt class="computeroutput"><span class="identifier">push_back</span></tt></a> is actually a generic algorithm
|
||||
that works on all sequences. Given an input sequence <tt class="computeroutput"><span class="identifier">s</span></tt>
|
||||
and a value <tt class="computeroutput"><span class="identifier">x</span></tt>, Fusion's <a href="algorithms/transformation/functions/push_back.html" title="push_back"><tt class="computeroutput"><span class="identifier">push_back</span></tt></a> algorithm simply returns
|
||||
a <a href="sequences/views/joint_view.html" title="joint_view"><tt class="computeroutput"><span class="identifier">joint_view</span></tt></a>:
|
||||
a view that holds a reference to the original sequence <tt class="computeroutput"><span class="identifier">s</span></tt>
|
||||
and the value <tt class="computeroutput"><span class="identifier">x</span></tt>. Functions
|
||||
such as <a href="algorithms/transformation/functions/push_back.html" title="push_back"><code class="computeroutput"><span class="identifier">push_back</span></code></a> to be totally generic. In
|
||||
Fusion, <a href="algorithms/transformation/functions/push_back.html" title="push_back"><code class="computeroutput"><span class="identifier">push_back</span></code></a> is actually a generic algorithm
|
||||
that works on all sequences. Given an input sequence <code class="computeroutput"><span class="identifier">s</span></code>
|
||||
and a value <code class="computeroutput"><span class="identifier">x</span></code>, Fusion's <a href="algorithms/transformation/functions/push_back.html" title="push_back"><code class="computeroutput"><span class="identifier">push_back</span></code></a> algorithm simply returns
|
||||
a <a href="sequences/views/joint_view.html" title="joint_view"><code class="computeroutput"><span class="identifier">joint_view</span></code></a>:
|
||||
a view that holds a reference to the original sequence <code class="computeroutput"><span class="identifier">s</span></code>
|
||||
and the value <code class="computeroutput"><span class="identifier">x</span></code>. Functions
|
||||
that were once sequence specific and need to be implemented N times over N
|
||||
different sequences are now implemented only once. That is to say that Fusion
|
||||
sequences are cheaply extensible. However, an important caveat is that the
|
||||
result of a sequence extending operation like <a href="algorithms/transformation/functions/push_back.html" title="push_back"><tt class="computeroutput"><span class="identifier">push_back</span></tt></a> does not retain the properties
|
||||
result of a sequence extending operation like <a href="algorithms/transformation/functions/push_back.html" title="push_back"><code class="computeroutput"><span class="identifier">push_back</span></code></a> does not retain the properties
|
||||
of the original sequence such as associativity of <span class="underline">_set</span>_s.
|
||||
To regain the original sequence, <a href="sequences/conversion/functions.html" title="Functions">Conversion</a>
|
||||
functions are provided. You may use one of the <a href="sequences/conversion/functions.html" title="Functions">Conversion</a>
|
||||
functions to convert back to the original sequence type.
|
||||
</p>
|
||||
<a name="fusion.algorithms.header"></a><h3>
|
||||
<a name="id553049"></a>
|
||||
<a name="id1080532"></a>
|
||||
<a href="algorithms.html#fusion.algorithms.header">Header</a>
|
||||
</h3>
|
||||
<pre class="programlisting">
|
||||
@@ -106,7 +173,7 @@
|
||||
</tr></table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="sequences/operators/comparison/greater_than_equal.html"><img src="../images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../images/home.png" alt="Home"></a><a accesskey="n" href="algorithms/concepts.html"><img src="../images/next.png" alt="Next"></a>
|
||||
<a accesskey="p" href="sequences/operators/comparison/greater_than_equal.html"><img src="../images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../images/home.png" alt="Home"></a><a accesskey="n" href="algorithms/iteration.html"><img src="../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -3,11 +3,10 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>Iteration</title>
|
||||
<link rel="stylesheet" href="../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../algorithms.html" title="Algorithms">
|
||||
<link rel="prev" href="concepts/poly.html" title=" Polymorphic Function
|
||||
Object">
|
||||
<link rel="prev" href="../algorithms.html" title="Algorithms">
|
||||
<link rel="next" href="iteration/functions.html" title="Functions">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
||||
@@ -21,21 +20,31 @@
|
||||
</table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="concepts/poly.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../algorithms.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="iteration/functions.html"><img src="../../images/next.png" alt="Next"></a>
|
||||
<a accesskey="p" href="../algorithms.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../algorithms.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="iteration/functions.html"><img src="../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
<div class="section" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="fusion.algorithms.iteration"></a><a href="iteration.html" title="Iteration">Iteration</a></h3></div></div></div>
|
||||
<div class="toc"><dl>
|
||||
<dt><span class="section"><a href="iteration/functions.html">Functions</a></span></dt>
|
||||
<dd><dl>
|
||||
<dt><span class="section"><a href="iteration/functions/fold.html">fold</a></span></dt>
|
||||
<dt><span class="section"><a href="iteration/functions/accumulate.html">accumulate</a></span></dt>
|
||||
<dt><span class="section"><a href="iteration/functions/for_each.html">for_each</a></span></dt>
|
||||
</dl></dd>
|
||||
<dt><span class="section"><a href="iteration/metafunctions.html">Metafunctions</a></span></dt>
|
||||
<dd><dl>
|
||||
<dt><span class="section"><a href="iteration/metafunctions/fold.html">fold</a></span></dt>
|
||||
<dt><span class="section"><a href="iteration/metafunctions/accumulate.html">accumulate</a></span></dt>
|
||||
<dt><span class="section"><a href="iteration/metafunctions/for_each.html">for_each</a></span></dt>
|
||||
</dl></dd>
|
||||
</dl></div>
|
||||
<p>
|
||||
The iteration algorithms provide the fundamental algorithms for traversing
|
||||
a sequence repeatedly applying an operation to its elements.
|
||||
</p>
|
||||
<a name="fusion.algorithms.iteration.header"></a><h4>
|
||||
<a name="id553535"></a>
|
||||
<a name="id1080628"></a>
|
||||
<a href="iteration.html#fusion.algorithms.iteration.header">Header</a>
|
||||
</h4>
|
||||
<pre class="programlisting">
|
||||
@@ -48,7 +57,7 @@
|
||||
</tr></table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="concepts/poly.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../algorithms.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="iteration/functions.html"><img src="../../images/next.png" alt="Next"></a>
|
||||
<a accesskey="p" href="../algorithms.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../algorithms.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="iteration/functions.html"><img src="../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>Functions</title>
|
||||
<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../iteration.html" title="Iteration">
|
||||
<link rel="prev" href="../iteration.html" title="Iteration">
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>accumulate</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../functions.html" title="Functions">
|
||||
<link rel="prev" href="fold.html" title="fold">
|
||||
@@ -26,18 +26,18 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.iteration.functions.accumulate"></a><a href="accumulate.html" title="accumulate">accumulate</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.iteration.functions.accumulate.description"></a><h6>
|
||||
<a name="id555122"></a>
|
||||
<a name="id1082030"></a>
|
||||
<a href="accumulate.html#fusion.algorithms.iteration.functions.accumulate.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
Repeatedly applies binary <a href="../../concepts/poly.html" title=" Polymorphic Function
|
||||
Repeatedly applies binary <a href="../../../functional/concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic
|
||||
Function Object</a> <tt class="computeroutput"><span class="identifier">f</span></tt>
|
||||
to each element of a sequence and the previous state. <a href="accumulate.html" title="accumulate"><tt class="computeroutput"><span class="identifier">accumulate</span></tt></a> is equivalent to
|
||||
<a href="fold.html" title="fold"><tt class="computeroutput"><span class="identifier">fold</span></tt></a>.
|
||||
Function Object</a> <code class="computeroutput"><span class="identifier">f</span></code>
|
||||
to each element of a sequence and the previous state. <a href="accumulate.html" title="accumulate"><code class="computeroutput"><span class="identifier">accumulate</span></code></a> is equivalent to
|
||||
<a href="fold.html" title="fold"><code class="computeroutput"><span class="identifier">fold</span></code></a>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.iteration.functions.accumulate.synopsis"></a><h6>
|
||||
<a name="id555207"></a>
|
||||
<a name="id1082105"></a>
|
||||
<a href="accumulate.html#fusion.algorithms.iteration.functions.accumulate.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -46,11 +46,11 @@
|
||||
<span class="keyword">typename</span> <span class="identifier">State</span><span class="special">,</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">F</span>
|
||||
<span class="special">></span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/accumulate.html" title="accumulate"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">accumulate</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">State</span><span class="special">,</span> <span class="identifier">F</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">accumulate</span><span class="special">(</span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/accumulate.html" title="accumulate"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">accumulate</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">State</span><span class="special">,</span> <span class="identifier">F</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">accumulate</span><span class="special">(</span>
|
||||
<span class="identifier">Sequence</span><span class="special">&</span> <span class="identifier">seq</span><span class="special">,</span> <span class="identifier">State</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">initial_state</span><span class="special">,</span> <span class="identifier">F</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">f</span><span class="special">);</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id555466"></a><p class="title"><b>Table 1.33. Parameters</b></p>
|
||||
<a name="id1082333"></a><p class="title"><b>Table 1.33. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -64,26 +64,26 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">seq</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">seq</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a>, <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">eN</span> <span class="special">....</span><span class="identifier">f</span><span class="special">(</span><span class="identifier">e2</span><span class="special">,</span><span class="identifier">f</span><span class="special">(</span><span class="identifier">e1</span><span class="special">,</span><span class="identifier">initial_state</span><span class="special">)))</span></tt> must be a valid expression for
|
||||
each element <tt class="computeroutput"><span class="identifier">e1</span></tt> to
|
||||
<tt class="computeroutput"><span class="identifier">eN</span></tt> in <tt class="computeroutput"><span class="identifier">seq</span></tt>
|
||||
Sequence</a>, <code class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">eN</span> <span class="special">....</span><span class="identifier">f</span><span class="special">(</span><span class="identifier">e2</span><span class="special">,</span><span class="identifier">f</span><span class="special">(</span><span class="identifier">e1</span><span class="special">,</span><span class="identifier">initial_state</span><span class="special">)))</span></code> must be a valid expression for
|
||||
each element <code class="computeroutput"><span class="identifier">e1</span></code> to
|
||||
<code class="computeroutput"><span class="identifier">eN</span></code> in <code class="computeroutput"><span class="identifier">seq</span></code>
|
||||
</td>
|
||||
<td>Operation's argument</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">initial_state</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">initial_state</span></code></td>
|
||||
<td>Any
|
||||
type</td>
|
||||
<td>Initial state</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">f</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">f</span></code></td>
|
||||
<td>A
|
||||
model of binary <a href="../../concepts/poly.html" title=" Polymorphic Function
|
||||
model of binary <a href="../../../functional/concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic
|
||||
Function Object</a>
|
||||
</td>
|
||||
@@ -93,7 +93,7 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.iteration.functions.accumulate.expression_semantics"></a><h6>
|
||||
<a name="id555697"></a>
|
||||
<a name="id1082536"></a>
|
||||
<a href="accumulate.html#fusion.algorithms.iteration.functions.accumulate.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
@@ -101,28 +101,28 @@
|
||||
<span class="identifier">accumulate</span><span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">initial_state</span><span class="special">,</span> <span class="identifier">f</span><span class="special">);</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: Any type
|
||||
<span class="bold"><strong>Return type</strong></span>: Any type
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Equivalent to <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">eN</span> <span class="special">....</span><span class="identifier">f</span><span class="special">(</span><span class="identifier">e2</span><span class="special">,</span><span class="identifier">f</span><span class="special">(</span><span class="identifier">e1</span><span class="special">,</span><span class="identifier">initial_state</span><span class="special">)))</span></tt>
|
||||
where <tt class="computeroutput"><span class="identifier">e1</span> <span class="special">...</span><span class="identifier">eN</span></tt> are the elements of <tt class="computeroutput"><span class="identifier">seq</span></tt>.
|
||||
<span class="bold"><strong>Semantics</strong></span>: Equivalent to <code class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">eN</span> <span class="special">....</span><span class="identifier">f</span><span class="special">(</span><span class="identifier">e2</span><span class="special">,</span><span class="identifier">f</span><span class="special">(</span><span class="identifier">e1</span><span class="special">,</span><span class="identifier">initial_state</span><span class="special">)))</span></code>
|
||||
where <code class="computeroutput"><span class="identifier">e1</span> <span class="special">...</span><span class="identifier">eN</span></code> are the elements of <code class="computeroutput"><span class="identifier">seq</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.iteration.functions.accumulate.complexity"></a><h6>
|
||||
<a name="id555903"></a>
|
||||
<a name="id1082544"></a>
|
||||
<a href="accumulate.html#fusion.algorithms.iteration.functions.accumulate.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Linear, exactly <tt class="computeroutput"><a href="../../../sequences/intrinsics/metafunctions/size.html" title="size"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">size</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">>::</span><span class="identifier">value</span></tt> applications of <tt class="computeroutput"><span class="identifier">f</span></tt>.
|
||||
Linear, exactly <code class="computeroutput"><a href="../../../sequences/intrinsics/metafunctions/size.html" title="size"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">size</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">>::</span><span class="identifier">value</span></code> applications of <code class="computeroutput"><span class="identifier">f</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.iteration.functions.accumulate.header"></a><h6>
|
||||
<a name="id555994"></a>
|
||||
<a name="id1082797"></a>
|
||||
<a href="accumulate.html#fusion.algorithms.iteration.functions.accumulate.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</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">iteration</span><span class="special">/</span><span class="identifier">accumulate</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.algorithms.iteration.functions.accumulate.example"></a><h6>
|
||||
<a name="id556100"></a>
|
||||
<a name="id1082890"></a>
|
||||
<a href="accumulate.html#fusion.algorithms.iteration.functions.accumulate.example">Example</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -141,8 +141,8 @@
|
||||
<span class="special">}</span>
|
||||
<span class="special">};</span>
|
||||
<span class="special">...</span>
|
||||
<span class="keyword">const</span> <a href="../../../sequences/containers/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special"><</span><span class="keyword">int</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="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">);</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="accumulate.html" title="accumulate"><tt class="computeroutput"><span class="identifier">accumulate</span></tt></a><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">string</span><span class="special">(</span><span class="string">""</span><span class="special">),</span> <span class="identifier">make_string</span><span class="special">())</span> <span class="special">==</span> <span class="string">"12"</span><span class="special">);</span>
|
||||
<span class="keyword">const</span> <a href="../../../sequences/containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special"><</span><span class="keyword">int</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="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">);</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="accumulate.html" title="accumulate"><code class="computeroutput"><span class="identifier">accumulate</span></code></a><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">string</span><span class="special">(</span><span class="string">""</span><span class="special">),</span> <span class="identifier">make_string</span><span class="special">())</span> <span class="special">==</span> <span class="string">"12"</span><span class="special">);</span>
|
||||
</pre>
|
||||
</div>
|
||||
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>fold</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../functions.html" title="Functions">
|
||||
<link rel="prev" href="../functions.html" title="Functions">
|
||||
@@ -26,17 +26,17 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.iteration.functions.fold"></a><a href="fold.html" title="fold">fold</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.iteration.functions.fold.description"></a><h6>
|
||||
<a name="id553670"></a>
|
||||
<a name="id1080746"></a>
|
||||
<a href="fold.html#fusion.algorithms.iteration.functions.fold.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
Repeatedly applies binary <a href="../../concepts/poly.html" title=" Polymorphic Function
|
||||
Repeatedly applies binary <a href="../../../functional/concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic
|
||||
Function Object</a> <tt class="computeroutput"><span class="identifier">f</span></tt>
|
||||
Function Object</a> <code class="computeroutput"><span class="identifier">f</span></code>
|
||||
to each element of a sequence and the previous state.
|
||||
</p>
|
||||
<a name="fusion.algorithms.iteration.functions.fold.synopsis"></a><h6>
|
||||
<a name="id553719"></a>
|
||||
<a name="id1080792"></a>
|
||||
<a href="fold.html#fusion.algorithms.iteration.functions.fold.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -45,11 +45,11 @@
|
||||
<span class="keyword">typename</span> <span class="identifier">State</span><span class="special">,</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">F</span>
|
||||
<span class="special">></span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/fold.html" title="fold"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">fold</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">State</span><span class="special">,</span> <span class="identifier">F</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">fold</span><span class="special">(</span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/fold.html" title="fold"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">fold</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">State</span><span class="special">,</span> <span class="identifier">F</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">fold</span><span class="special">(</span>
|
||||
<span class="identifier">Sequence</span><span class="special">&</span> <span class="identifier">seq</span><span class="special">,</span> <span class="identifier">State</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">initial_state</span><span class="special">,</span> <span class="identifier">F</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">f</span><span class="special">);</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id553977"></a><p class="title"><b>Table 1.32. Parameters</b></p>
|
||||
<a name="id1081019"></a><p class="title"><b>Table 1.32. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -63,25 +63,25 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">seq</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">seq</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a>,<tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">)</span></tt> must be a valid expression for each
|
||||
element <tt class="computeroutput"><span class="identifier">e</span></tt> in <tt class="computeroutput"><span class="identifier">seq</span></tt>
|
||||
Sequence</a>,<code class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">)</span></code> must be a valid expression for each
|
||||
element <code class="computeroutput"><span class="identifier">e</span></code> in <code class="computeroutput"><span class="identifier">seq</span></code>
|
||||
</td>
|
||||
<td>Operation's argument</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">initial_state</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">initial_state</span></code></td>
|
||||
<td>Any
|
||||
type</td>
|
||||
<td>Initial state</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">f</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">f</span></code></td>
|
||||
<td>A
|
||||
model of binary <a href="../../concepts/poly.html" title=" Polymorphic Function
|
||||
model of binary <a href="../../../functional/concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic
|
||||
Function Object</a>
|
||||
</td>
|
||||
@@ -91,7 +91,7 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.iteration.functions.fold.expression_semantics"></a><h6>
|
||||
<a name="id554145"></a>
|
||||
<a name="id1081167"></a>
|
||||
<a href="fold.html#fusion.algorithms.iteration.functions.fold.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
@@ -99,28 +99,28 @@
|
||||
<span class="identifier">fold</span><span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">initial_state</span><span class="special">,</span> <span class="identifier">f</span><span class="special">);</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: Any type
|
||||
<span class="bold"><strong>Return type</strong></span>: Any type
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Equivalent to <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">eN</span> <span class="special">....</span><span class="identifier">f</span><span class="special">(</span><span class="identifier">e2</span><span class="special">,</span><span class="identifier">f</span><span class="special">(</span><span class="identifier">e1</span><span class="special">,</span><span class="identifier">initial_state</span><span class="special">)))</span></tt>
|
||||
where <tt class="computeroutput"><span class="identifier">e1</span> <span class="special">...</span><span class="identifier">eN</span></tt> are the elements of <tt class="computeroutput"><span class="identifier">seq</span></tt>.
|
||||
<span class="bold"><strong>Semantics</strong></span>: Equivalent to <code class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">eN</span> <span class="special">....</span><span class="identifier">f</span><span class="special">(</span><span class="identifier">e2</span><span class="special">,</span><span class="identifier">f</span><span class="special">(</span><span class="identifier">e1</span><span class="special">,</span><span class="identifier">initial_state</span><span class="special">)))</span></code>
|
||||
where <code class="computeroutput"><span class="identifier">e1</span> <span class="special">...</span><span class="identifier">eN</span></code> are the elements of <code class="computeroutput"><span class="identifier">seq</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.iteration.functions.fold.complexity"></a><h6>
|
||||
<a name="id554349"></a>
|
||||
<a name="id1081347"></a>
|
||||
<a href="fold.html#fusion.algorithms.iteration.functions.fold.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Linear, exactly <tt class="computeroutput"><a href="../../../sequences/intrinsics/metafunctions/size.html" title="size"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">size</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">>::</span><span class="identifier">value</span></tt> applications of <tt class="computeroutput"><span class="identifier">f</span></tt>.
|
||||
Linear, exactly <code class="computeroutput"><a href="../../../sequences/intrinsics/metafunctions/size.html" title="size"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">size</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">>::</span><span class="identifier">value</span></code> applications of <code class="computeroutput"><span class="identifier">f</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.iteration.functions.fold.header"></a><h6>
|
||||
<a name="id554441"></a>
|
||||
<a name="id1081428"></a>
|
||||
<a href="fold.html#fusion.algorithms.iteration.functions.fold.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</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">iteration</span><span class="special">/</span><span class="identifier">fold</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.algorithms.iteration.functions.fold.example"></a><h6>
|
||||
<a name="id554546"></a>
|
||||
<a name="id1081522"></a>
|
||||
<a href="fold.html#fusion.algorithms.iteration.functions.fold.example">Example</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -139,8 +139,8 @@
|
||||
<span class="special">}</span>
|
||||
<span class="special">};</span>
|
||||
<span class="special">...</span>
|
||||
<span class="keyword">const</span> <a href="../../../sequences/containers/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special"><</span><span class="keyword">int</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="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">);</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="fold.html" title="fold"><tt class="computeroutput"><span class="identifier">fold</span></tt></a><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">string</span><span class="special">(</span><span class="string">""</span><span class="special">),</span> <span class="identifier">make_string</span><span class="special">())</span> <span class="special">==</span> <span class="string">"12"</span><span class="special">);</span>
|
||||
<span class="keyword">const</span> <a href="../../../sequences/containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special"><</span><span class="keyword">int</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="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">);</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="fold.html" title="fold"><code class="computeroutput"><span class="identifier">fold</span></code></a><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">string</span><span class="special">(</span><span class="string">""</span><span class="special">),</span> <span class="identifier">make_string</span><span class="special">())</span> <span class="special">==</span> <span class="string">"12"</span><span class="special">);</span>
|
||||
</pre>
|
||||
</div>
|
||||
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>for_each</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../functions.html" title="Functions">
|
||||
<link rel="prev" href="accumulate.html" title="accumulate">
|
||||
@@ -26,14 +26,14 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.iteration.functions.for_each"></a><a href="for_each.html" title="for_each">for_each</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.iteration.functions.for_each.description"></a><h6>
|
||||
<a name="id556673"></a>
|
||||
<a name="id1083395"></a>
|
||||
<a href="for_each.html#fusion.algorithms.iteration.functions.for_each.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
Applies a unary function object to each element of a sequence.
|
||||
</p>
|
||||
<a name="fusion.algorithms.iteration.functions.for_each.synopsis"></a><h6>
|
||||
<a name="id556705"></a>
|
||||
<a name="id1083424"></a>
|
||||
<a href="for_each.html#fusion.algorithms.iteration.functions.for_each.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -41,11 +41,11 @@
|
||||
<span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">F</span>
|
||||
<span class="special">></span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/for_each.html" title="for_each"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">for_each</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">F</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">for_each</span><span class="special">(</span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/for_each.html" title="for_each"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">for_each</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">F</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">for_each</span><span class="special">(</span>
|
||||
<span class="identifier">Sequence</span><span class="special">&</span> <span class="identifier">seq</span><span class="special">,</span> <span class="identifier">F</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">f</span><span class="special">);</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id556906"></a><p class="title"><b>Table 1.34. Parameters</b></p>
|
||||
<a name="id1101077"></a><p class="title"><b>Table 1.34. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -59,17 +59,17 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">seq</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">seq</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a>, <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">)</span></tt> must be a valid expression for each
|
||||
element <tt class="computeroutput"><span class="identifier">e</span></tt> in <tt class="computeroutput"><span class="identifier">seq</span></tt>
|
||||
Sequence</a>, <code class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">)</span></code> must be a valid expression for each
|
||||
element <code class="computeroutput"><span class="identifier">e</span></code> in <code class="computeroutput"><span class="identifier">seq</span></code>
|
||||
</td>
|
||||
<td>Operation's argument</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">f</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">f</span></code></td>
|
||||
<td>A
|
||||
unary function object</td>
|
||||
<td>Operation's argument</td>
|
||||
@@ -78,36 +78,36 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.iteration.functions.for_each.expression_semantics"></a><h6>
|
||||
<a name="id557045"></a>
|
||||
<a name="id1101202"></a>
|
||||
<a href="for_each.html#fusion.algorithms.iteration.functions.for_each.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="for_each.html" title="for_each"><tt class="computeroutput"><span class="identifier">for_each</span></tt></a><span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">f</span><span class="special">);</span>
|
||||
<a href="for_each.html" title="for_each"><code class="computeroutput"><span class="identifier">for_each</span></code></a><span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">f</span><span class="special">);</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: <tt class="computeroutput"><span class="keyword">void</span></tt>
|
||||
<span class="bold"><strong>Return type</strong></span>: <code class="computeroutput"><span class="keyword">void</span></code>
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Calls <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">)</span></tt> for each element <tt class="computeroutput"><span class="identifier">e</span></tt>
|
||||
in <tt class="computeroutput"><span class="identifier">seq</span></tt>.
|
||||
<span class="bold"><strong>Semantics</strong></span>: Calls <code class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">)</span></code> for each element <code class="computeroutput"><span class="identifier">e</span></code>
|
||||
in <code class="computeroutput"><span class="identifier">seq</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.iteration.functions.for_each.complexity"></a><h6>
|
||||
<a name="id557197"></a>
|
||||
<a name="id1101335"></a>
|
||||
<a href="for_each.html#fusion.algorithms.iteration.functions.for_each.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Linear, exactly <tt class="computeroutput"><a href="../../../sequences/intrinsics/metafunctions/size.html" title="size"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">size</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">>::</span><span class="identifier">value</span></tt> applications of <tt class="computeroutput"><span class="identifier">f</span></tt>.
|
||||
Linear, exactly <code class="computeroutput"><a href="../../../sequences/intrinsics/metafunctions/size.html" title="size"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">size</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">>::</span><span class="identifier">value</span></code> applications of <code class="computeroutput"><span class="identifier">f</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.iteration.functions.for_each.header"></a><h6>
|
||||
<a name="id557289"></a>
|
||||
<a name="id1101416"></a>
|
||||
<a href="for_each.html#fusion.algorithms.iteration.functions.for_each.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</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">iteration</span><span class="special">/</span><span class="identifier">for_each</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.algorithms.iteration.functions.for_each.example"></a><h6>
|
||||
<a name="id557395"></a>
|
||||
<a name="id1101509"></a>
|
||||
<a href="for_each.html#fusion.algorithms.iteration.functions.for_each.example">Example</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -120,9 +120,9 @@
|
||||
<span class="special">}</span>
|
||||
<span class="special">};</span>
|
||||
<span class="special">...</span>
|
||||
<a href="../../../sequences/containers/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special"><</span><span class="keyword">int</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="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">);</span>
|
||||
<a href="for_each.html" title="for_each"><tt class="computeroutput"><span class="identifier">for_each</span></tt></a><span class="special">(</span><span class="identifier">vec</span><span class="special">,</span> <span class="identifier">increment</span><span class="special">());</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><span class="identifier">vec</span> <span class="special">==</span> <a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><tt class="computeroutput"><span class="identifier">make_vector</span></tt></a><span class="special">(</span><span class="number">2</span><span class="special">,</span><span class="number">3</span><span class="special">));</span>
|
||||
<a href="../../../sequences/containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special"><</span><span class="keyword">int</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="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">);</span>
|
||||
<a href="for_each.html" title="for_each"><code class="computeroutput"><span class="identifier">for_each</span></code></a><span class="special">(</span><span class="identifier">vec</span><span class="special">,</span> <span class="identifier">increment</span><span class="special">());</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><span class="identifier">vec</span> <span class="special">==</span> <a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><code class="computeroutput"><span class="identifier">make_vector</span></code></a><span class="special">(</span><span class="number">2</span><span class="special">,</span><span class="number">3</span><span class="special">));</span>
|
||||
</pre>
|
||||
</div>
|
||||
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>Metafunctions</title>
|
||||
<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../iteration.html" title="Iteration">
|
||||
<link rel="prev" href="functions/for_each.html" title="for_each">
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>accumulate</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../metafunctions.html" title="Metafunctions">
|
||||
<link rel="prev" href="fold.html" title="fold">
|
||||
@@ -26,14 +26,14 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.iteration.metafunctions.accumulate"></a><a href="accumulate.html" title="accumulate">accumulate</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.iteration.metafunctions.accumulate.description"></a><h6>
|
||||
<a name="id558486"></a>
|
||||
<a name="id1102475"></a>
|
||||
<a href="accumulate.html#fusion.algorithms.iteration.metafunctions.accumulate.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
Returns the result type of <a href="../functions/accumulate.html" title="accumulate"><tt class="computeroutput"><span class="identifier">accumulate</span></tt></a>.
|
||||
Returns the result type of <a href="../functions/accumulate.html" title="accumulate"><code class="computeroutput"><span class="identifier">accumulate</span></code></a>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.iteration.metafunctions.accumulate.synopsis"></a><h6>
|
||||
<a name="id558534"></a>
|
||||
<a name="id1102517"></a>
|
||||
<a href="accumulate.html#fusion.algorithms.iteration.metafunctions.accumulate.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -47,7 +47,7 @@
|
||||
<span class="special">};</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id558669"></a><p class="title"><b>Table 1.36. Parameters</b></p>
|
||||
<a name="id1102635"></a><p class="title"><b>Table 1.36. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -61,7 +61,7 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">Sequence</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">Sequence</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
@@ -70,17 +70,17 @@
|
||||
<td>The sequence to iterate</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">State</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">State</span></code></td>
|
||||
<td>Any
|
||||
type</td>
|
||||
<td>The initial state for the first application of
|
||||
<tt class="computeroutput"><span class="identifier">F</span></tt>
|
||||
<code class="computeroutput"><span class="identifier">F</span></code>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">F</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">F</span></code></td>
|
||||
<td>A
|
||||
model of binary <a href="../../concepts/poly.html" title=" Polymorphic Function
|
||||
model of binary <a href="../../../functional/concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic
|
||||
Function Object</a>
|
||||
</td>
|
||||
@@ -91,34 +91,34 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.iteration.metafunctions.accumulate.expression_semantics"></a><h6>
|
||||
<a name="id558804"></a>
|
||||
<a name="id1102755"></a>
|
||||
<a href="accumulate.html#fusion.algorithms.iteration.metafunctions.accumulate.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="accumulate.html" title="accumulate"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">accumulate</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">State</span><span class="special">,</span> <span class="identifier">F</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<a href="accumulate.html" title="accumulate"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">accumulate</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">State</span><span class="special">,</span> <span class="identifier">F</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: Any type
|
||||
<span class="bold"><strong>Return type</strong></span>: Any type
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns the result of applying
|
||||
<tt class="computeroutput"><span class="identifier">accumulate</span></tt> to a sequence
|
||||
of type <tt class="computeroutput"><span class="identifier">Sequence</span></tt>, with
|
||||
an initial state of type <tt class="computeroutput"><span class="identifier">State</span></tt>
|
||||
and binary <a href="../../concepts/poly.html" title=" Polymorphic Function
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns the result of applying
|
||||
<code class="computeroutput"><span class="identifier">accumulate</span></code> to a sequence
|
||||
of type <code class="computeroutput"><span class="identifier">Sequence</span></code>, with
|
||||
an initial state of type <code class="computeroutput"><span class="identifier">State</span></code>
|
||||
and binary <a href="../../../functional/concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic
|
||||
Function Object</a> of type <tt class="computeroutput"><span class="identifier">F</span></tt>.
|
||||
Function Object</a> of type <code class="computeroutput"><span class="identifier">F</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.iteration.metafunctions.accumulate.complexity"></a><h6>
|
||||
<a name="id558982"></a>
|
||||
<a name="id1102909"></a>
|
||||
<a href="accumulate.html#fusion.algorithms.iteration.metafunctions.accumulate.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Linear, exactly <tt class="computeroutput"><a href="../../../sequences/intrinsics/metafunctions/size.html" title="size"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">size</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">>::</span><span class="identifier">value</span></tt> applications of <tt class="computeroutput"><span class="identifier">F</span></tt>.
|
||||
Linear, exactly <code class="computeroutput"><a href="../../../sequences/intrinsics/metafunctions/size.html" title="size"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">size</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">>::</span><span class="identifier">value</span></code> applications of <code class="computeroutput"><span class="identifier">F</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.iteration.metafunctions.accumulate.header"></a><h6>
|
||||
<a name="id559074"></a>
|
||||
<a name="id1102991"></a>
|
||||
<a href="accumulate.html#fusion.algorithms.iteration.metafunctions.accumulate.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>fold</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../metafunctions.html" title="Metafunctions">
|
||||
<link rel="prev" href="../metafunctions.html" title="Metafunctions">
|
||||
@@ -26,14 +26,14 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.iteration.metafunctions.fold"></a><a href="fold.html" title="fold">fold</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.iteration.metafunctions.fold.description"></a><h6>
|
||||
<a name="id557777"></a>
|
||||
<a name="id1101846"></a>
|
||||
<a href="fold.html#fusion.algorithms.iteration.metafunctions.fold.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
Returns the result type of <a href="../functions/fold.html" title="fold"><tt class="computeroutput"><span class="identifier">fold</span></tt></a>.
|
||||
Returns the result type of <a href="../functions/fold.html" title="fold"><code class="computeroutput"><span class="identifier">fold</span></code></a>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.iteration.metafunctions.fold.synopsis"></a><h6>
|
||||
<a name="id557824"></a>
|
||||
<a name="id1101889"></a>
|
||||
<a href="fold.html#fusion.algorithms.iteration.metafunctions.fold.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -47,7 +47,7 @@
|
||||
<span class="special">};</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id557959"></a><p class="title"><b>Table 1.35. Parameters</b></p>
|
||||
<a name="id1102007"></a><p class="title"><b>Table 1.35. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -61,7 +61,7 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">Sequence</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">Sequence</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
@@ -70,17 +70,17 @@
|
||||
<td>The sequence to iterate</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">State</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">State</span></code></td>
|
||||
<td>Any
|
||||
type</td>
|
||||
<td>The initial state for the first application of
|
||||
<tt class="computeroutput"><span class="identifier">F</span></tt>
|
||||
<code class="computeroutput"><span class="identifier">F</span></code>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">F</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">F</span></code></td>
|
||||
<td>A
|
||||
model of binary <a href="../../concepts/poly.html" title=" Polymorphic Function
|
||||
model of binary <a href="../../../functional/concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic
|
||||
Function Object</a>
|
||||
</td>
|
||||
@@ -91,34 +91,34 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.iteration.metafunctions.fold.expression_semantics"></a><h6>
|
||||
<a name="id558092"></a>
|
||||
<a name="id1102127"></a>
|
||||
<a href="fold.html#fusion.algorithms.iteration.metafunctions.fold.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="fold.html" title="fold"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">fold</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">State</span><span class="special">,</span> <span class="identifier">F</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<a href="fold.html" title="fold"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">fold</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">State</span><span class="special">,</span> <span class="identifier">F</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: Any type
|
||||
<span class="bold"><strong>Return type</strong></span>: Any type
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns the result of applying
|
||||
<tt class="computeroutput"><span class="identifier">fold</span></tt> to a sequence of
|
||||
type <tt class="computeroutput"><span class="identifier">Sequence</span></tt>, with an
|
||||
initial state of type <tt class="computeroutput"><span class="identifier">State</span></tt>
|
||||
and binary <a href="../../concepts/poly.html" title=" Polymorphic Function
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns the result of applying
|
||||
<code class="computeroutput"><span class="identifier">fold</span></code> to a sequence of
|
||||
type <code class="computeroutput"><span class="identifier">Sequence</span></code>, with an
|
||||
initial state of type <code class="computeroutput"><span class="identifier">State</span></code>
|
||||
and binary <a href="../../../functional/concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic
|
||||
Function Object</a> of type <tt class="computeroutput"><span class="identifier">F</span></tt>.
|
||||
Function Object</a> of type <code class="computeroutput"><span class="identifier">F</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.iteration.metafunctions.fold.complexity"></a><h6>
|
||||
<a name="id558269"></a>
|
||||
<a name="id1102281"></a>
|
||||
<a href="fold.html#fusion.algorithms.iteration.metafunctions.fold.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Linear, exactly <tt class="computeroutput"><a href="../../../sequences/intrinsics/metafunctions/size.html" title="size"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">size</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">>::</span><span class="identifier">value</span></tt> applications of <tt class="computeroutput"><span class="identifier">F</span></tt>.
|
||||
Linear, exactly <code class="computeroutput"><a href="../../../sequences/intrinsics/metafunctions/size.html" title="size"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">size</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">>::</span><span class="identifier">value</span></code> applications of <code class="computeroutput"><span class="identifier">F</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.iteration.metafunctions.fold.header"></a><h6>
|
||||
<a name="id558360"></a>
|
||||
<a name="id1102362"></a>
|
||||
<a href="fold.html#fusion.algorithms.iteration.metafunctions.fold.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>for_each</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../metafunctions.html" title="Metafunctions">
|
||||
<link rel="prev" href="accumulate.html" title="accumulate">
|
||||
@@ -26,15 +26,15 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.iteration.metafunctions.for_each"></a><a href="for_each.html" title="for_each">for_each</a></h5></div></div></div>
|
||||
<p>
|
||||
A metafunction returning the result type of applying <a href="../functions/for_each.html" title="for_each"><tt class="computeroutput"><span class="identifier">for_each</span></tt></a> to a sequence. The
|
||||
return type of <a href="../functions/for_each.html" title="for_each"><tt class="computeroutput"><span class="identifier">for_each</span></tt></a> is always <tt class="computeroutput"><span class="keyword">void</span></tt>.
|
||||
A metafunction returning the result type of applying <a href="../functions/for_each.html" title="for_each"><code class="computeroutput"><span class="identifier">for_each</span></code></a> to a sequence. The
|
||||
return type of <a href="../functions/for_each.html" title="for_each"><code class="computeroutput"><span class="identifier">for_each</span></code></a> is always <code class="computeroutput"><span class="keyword">void</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.iteration.metafunctions.for_each.description"></a><h6>
|
||||
<a name="id559249"></a>
|
||||
<a name="id1103146"></a>
|
||||
<a href="for_each.html#fusion.algorithms.iteration.metafunctions.for_each.description">Description</a>
|
||||
</h6>
|
||||
<a name="fusion.algorithms.iteration.metafunctions.for_each.synopsis"></a><h6>
|
||||
<a name="id559277"></a>
|
||||
<a name="id1103170"></a>
|
||||
<a href="for_each.html#fusion.algorithms.iteration.metafunctions.for_each.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -48,7 +48,7 @@
|
||||
<span class="special">};</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id559397"></a><p class="title"><b>Table 1.37. Parameters</b></p>
|
||||
<a name="id1103276"></a><p class="title"><b>Table 1.37. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -62,7 +62,7 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">Sequence</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">Sequence</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
@@ -71,7 +71,7 @@
|
||||
<td>Operation's argument</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">F</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">F</span></code></td>
|
||||
<td>Any
|
||||
type</td>
|
||||
<td>Operation's argument</td>
|
||||
@@ -80,32 +80,32 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.iteration.metafunctions.for_each.expression_semantics"></a><h6>
|
||||
<a name="id559494"></a>
|
||||
<a name="id1103361"></a>
|
||||
<a href="for_each.html#fusion.algorithms.iteration.metafunctions.for_each.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="for_each.html" title="for_each"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">for_each</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">F</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<a href="for_each.html" title="for_each"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">for_each</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">F</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: <tt class="computeroutput"><span class="keyword">void</span></tt>.
|
||||
<span class="bold"><strong>Return type</strong></span>: <code class="computeroutput"><span class="keyword">void</span></code>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns the return type of
|
||||
<a href="../functions/for_each.html" title="for_each"><tt class="computeroutput"><span class="identifier">for_each</span></tt></a> for a sequence of type
|
||||
<tt class="computeroutput"><span class="identifier">Sequence</span></tt> and a unary
|
||||
function object <tt class="computeroutput"><span class="identifier">F</span></tt>. The
|
||||
return type is always <tt class="computeroutput"><span class="keyword">void</span></tt>.
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns the return type of
|
||||
<a href="../functions/for_each.html" title="for_each"><code class="computeroutput"><span class="identifier">for_each</span></code></a> for a sequence of type
|
||||
<code class="computeroutput"><span class="identifier">Sequence</span></code> and a unary
|
||||
function object <code class="computeroutput"><span class="identifier">F</span></code>. The
|
||||
return type is always <code class="computeroutput"><span class="keyword">void</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.iteration.metafunctions.for_each.complexity"></a><h6>
|
||||
<a name="id559666"></a>
|
||||
<a name="id1103512"></a>
|
||||
<a href="for_each.html#fusion.algorithms.iteration.metafunctions.for_each.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Constant.
|
||||
</p>
|
||||
<a name="fusion.algorithms.iteration.metafunctions.for_each.header"></a><h6>
|
||||
<a name="id559698"></a>
|
||||
<a name="id1103540"></a>
|
||||
<a href="for_each.html#fusion.algorithms.iteration.metafunctions.for_each.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>Query</title>
|
||||
<link rel="stylesheet" href="../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../algorithms.html" title="Algorithms">
|
||||
<link rel="prev" href="iteration/metafunctions/for_each.html" title="for_each">
|
||||
@@ -27,13 +27,31 @@
|
||||
<a name="fusion.algorithms.query"></a><a href="query.html" title="Query">Query</a></h3></div></div></div>
|
||||
<div class="toc"><dl>
|
||||
<dt><span class="section"><a href="query/functions.html">Functions</a></span></dt>
|
||||
<dd><dl>
|
||||
<dt><span class="section"><a href="query/functions/any.html">any</a></span></dt>
|
||||
<dt><span class="section"><a href="query/functions/all.html">all</a></span></dt>
|
||||
<dt><span class="section"><a href="query/functions/none.html">none</a></span></dt>
|
||||
<dt><span class="section"><a href="query/functions/find.html">find</a></span></dt>
|
||||
<dt><span class="section"><a href="query/functions/find_if.html">find_if</a></span></dt>
|
||||
<dt><span class="section"><a href="query/functions/count.html">count</a></span></dt>
|
||||
<dt><span class="section"><a href="query/functions/count_if.html">count_if</a></span></dt>
|
||||
</dl></dd>
|
||||
<dt><span class="section"><a href="query/metafunctions.html">Metafunctions</a></span></dt>
|
||||
<dd><dl>
|
||||
<dt><span class="section"><a href="query/metafunctions/any.html">any</a></span></dt>
|
||||
<dt><span class="section"><a href="query/metafunctions/all.html">all</a></span></dt>
|
||||
<dt><span class="section"><a href="query/metafunctions/none.html">none</a></span></dt>
|
||||
<dt><span class="section"><a href="query/metafunctions/find.html">find</a></span></dt>
|
||||
<dt><span class="section"><a href="query/metafunctions/find_if.html">find_if</a></span></dt>
|
||||
<dt><span class="section"><a href="query/metafunctions/count.html">count</a></span></dt>
|
||||
<dt><span class="section"><a href="query/metafunctions/count_if.html">count_if</a></span></dt>
|
||||
</dl></dd>
|
||||
</dl></div>
|
||||
<p>
|
||||
The query algorithms provide support for searching and analyzing sequences.
|
||||
</p>
|
||||
<a name="fusion.algorithms.query.header"></a><h4>
|
||||
<a name="id559831"></a>
|
||||
<a name="id1103657"></a>
|
||||
<a href="query.html#fusion.algorithms.query.header">Header</a>
|
||||
</h4>
|
||||
<pre class="programlisting">
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>Functions</title>
|
||||
<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../query.html" title="Query">
|
||||
<link rel="prev" href="../query.html" title="Query">
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>all</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../functions.html" title="Functions">
|
||||
<link rel="prev" href="any.html" title="any">
|
||||
@@ -26,18 +26,18 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.query.functions.all"></a><a href="all.html" title="all">all</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.query.functions.all.description"></a><h6>
|
||||
<a name="id561092"></a>
|
||||
<a name="id1104770"></a>
|
||||
<a href="all.html#fusion.algorithms.query.functions.all.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
For a sequence <tt class="computeroutput"><span class="identifier">seq</span></tt> and
|
||||
unary function object <tt class="computeroutput"><span class="identifier">f</span></tt>,
|
||||
<tt class="computeroutput"><span class="identifier">all</span></tt> returns true if
|
||||
<tt class="computeroutput"><span class="identifier">f</span></tt> returns true for every
|
||||
element of <tt class="computeroutput"><span class="identifier">seq</span></tt>.
|
||||
For a sequence <code class="computeroutput"><span class="identifier">seq</span></code> and
|
||||
unary function object <code class="computeroutput"><span class="identifier">f</span></code>,
|
||||
<code class="computeroutput"><span class="identifier">all</span></code> returns true if
|
||||
<code class="computeroutput"><span class="identifier">f</span></code> returns true for every
|
||||
element of <code class="computeroutput"><span class="identifier">seq</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.query.functions.all.synopsis"></a><h6>
|
||||
<a name="id561174"></a>
|
||||
<a name="id1104843"></a>
|
||||
<a href="all.html#fusion.algorithms.query.functions.all.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -45,11 +45,11 @@
|
||||
<span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">F</span>
|
||||
<span class="special">></span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/all.html" title="all"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">all</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span><span class="identifier">F</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">all</span><span class="special">(</span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/all.html" title="all"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">all</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span><span class="identifier">F</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">all</span><span class="special">(</span>
|
||||
<span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">seq</span><span class="special">,</span> <span class="identifier">F</span> <span class="identifier">f</span><span class="special">);</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id561366"></a><p class="title"><b>Table 1.39. Parameters</b></p>
|
||||
<a name="id1105011"></a><p class="title"><b>Table 1.39. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -63,19 +63,19 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">seq</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">seq</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a>, <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">)</span></tt> is a valid expression, convertible
|
||||
to <tt class="computeroutput"><span class="keyword">bool</span></tt>, for every element
|
||||
<tt class="computeroutput"><span class="identifier">e</span></tt> in <tt class="computeroutput"><span class="identifier">seq</span></tt>
|
||||
Sequence</a>, <code class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">)</span></code> is a valid expression, convertible
|
||||
to <code class="computeroutput"><span class="keyword">bool</span></code>, for every element
|
||||
<code class="computeroutput"><span class="identifier">e</span></code> in <code class="computeroutput"><span class="identifier">seq</span></code>
|
||||
</td>
|
||||
<td>The sequence
|
||||
to search</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">f</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">f</span></code></td>
|
||||
<td>A
|
||||
unary function object</td>
|
||||
<td>The search predicate</td>
|
||||
@@ -84,38 +84,38 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.query.functions.all.expression_semantics"></a><h6>
|
||||
<a name="id561516"></a>
|
||||
<a name="id1105144"></a>
|
||||
<a href="all.html#fusion.algorithms.query.functions.all.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="all.html" title="all"><tt class="computeroutput"><span class="identifier">all</span></tt></a><span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">f</span><span class="special">);</span>
|
||||
<a href="all.html" title="all"><code class="computeroutput"><span class="identifier">all</span></code></a><span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">f</span><span class="special">);</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: <tt class="computeroutput"><span class="keyword">bool</span></tt>
|
||||
<span class="bold"><strong>Return type</strong></span>: <code class="computeroutput"><span class="keyword">bool</span></code>
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns true if and only
|
||||
if <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">)</span></tt>
|
||||
evaluates to <tt class="computeroutput"><span class="keyword">true</span></tt> for every
|
||||
element <tt class="computeroutput"><span class="identifier">e</span></tt> in <tt class="computeroutput"><span class="identifier">seq</span></tt>.
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns true if and only
|
||||
if <code class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">)</span></code>
|
||||
evaluates to <code class="computeroutput"><span class="keyword">true</span></code> for every
|
||||
element <code class="computeroutput"><span class="identifier">e</span></code> in <code class="computeroutput"><span class="identifier">seq</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.query.functions.all.complexity"></a><h6>
|
||||
<a name="id561678"></a>
|
||||
<a name="id1105286"></a>
|
||||
<a href="all.html#fusion.algorithms.query.functions.all.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Linear. At most <tt class="computeroutput"><a href="../../../sequences/intrinsics/metafunctions/size.html" title="size"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">size</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">>::</span><span class="identifier">value</span></tt> comparisons.
|
||||
Linear. At most <code class="computeroutput"><a href="../../../sequences/intrinsics/metafunctions/size.html" title="size"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">size</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">>::</span><span class="identifier">value</span></code> comparisons.
|
||||
</p>
|
||||
<a name="fusion.algorithms.query.functions.all.header"></a><h6>
|
||||
<a name="id561761"></a>
|
||||
<a name="id1105359"></a>
|
||||
<a href="all.html#fusion.algorithms.query.functions.all.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</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">query</span><span class="special">/</span><span class="identifier">all</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.algorithms.query.functions.all.example"></a><h6>
|
||||
<a name="id561865"></a>
|
||||
<a name="id1105450"></a>
|
||||
<a href="all.html#fusion.algorithms.query.functions.all.example">Example</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -128,8 +128,8 @@
|
||||
<span class="special">}</span>
|
||||
<span class="special">};</span>
|
||||
<span class="special">...</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="all.html" title="all"><tt class="computeroutput"><span class="identifier">all</span></tt></a><span class="special">(</span><a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><tt class="computeroutput"><span class="identifier">make_vector</span></tt></a><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">3</span><span class="special">),</span> <span class="identifier">odd</span><span class="special">()));</span>
|
||||
<span class="identifier">assert</span><span class="special">(!</span><a href="all.html" title="all"><tt class="computeroutput"><span class="identifier">all</span></tt></a><span class="special">(</span><a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><tt class="computeroutput"><span class="identifier">make_vector</span></tt></a><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">),</span> <span class="identifier">odd</span><span class="special">()));</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="all.html" title="all"><code class="computeroutput"><span class="identifier">all</span></code></a><span class="special">(</span><a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><code class="computeroutput"><span class="identifier">make_vector</span></code></a><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">3</span><span class="special">),</span> <span class="identifier">odd</span><span class="special">()));</span>
|
||||
<span class="identifier">assert</span><span class="special">(!</span><a href="all.html" title="all"><code class="computeroutput"><span class="identifier">all</span></code></a><span class="special">(</span><a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><code class="computeroutput"><span class="identifier">make_vector</span></code></a><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">),</span> <span class="identifier">odd</span><span class="special">()));</span>
|
||||
</pre>
|
||||
</div>
|
||||
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>any</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../functions.html" title="Functions">
|
||||
<link rel="prev" href="../functions.html" title="Functions">
|
||||
@@ -26,18 +26,18 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.query.functions.any"></a><a href="any.html" title="any">any</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.query.functions.any.description"></a><h6>
|
||||
<a name="id559966"></a>
|
||||
<a name="id1103776"></a>
|
||||
<a href="any.html#fusion.algorithms.query.functions.any.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
For a sequence <tt class="computeroutput"><span class="identifier">seq</span></tt> and
|
||||
unary function object <tt class="computeroutput"><span class="identifier">f</span></tt>,
|
||||
<tt class="computeroutput"><span class="identifier">any</span></tt> returns true if
|
||||
<tt class="computeroutput"><span class="identifier">f</span></tt> returns true for at
|
||||
least one element of <tt class="computeroutput"><span class="identifier">seq</span></tt>.
|
||||
For a sequence <code class="computeroutput"><span class="identifier">seq</span></code> and
|
||||
unary function object <code class="computeroutput"><span class="identifier">f</span></code>,
|
||||
<code class="computeroutput"><span class="identifier">any</span></code> returns true if
|
||||
<code class="computeroutput"><span class="identifier">f</span></code> returns true for at
|
||||
least one element of <code class="computeroutput"><span class="identifier">seq</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.query.functions.any.synopsis"></a><h6>
|
||||
<a name="id560046"></a>
|
||||
<a name="id1103849"></a>
|
||||
<a href="any.html#fusion.algorithms.query.functions.any.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -45,11 +45,11 @@
|
||||
<span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">F</span>
|
||||
<span class="special">></span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/any.html" title="any"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">any</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span><span class="identifier">F</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">any</span><span class="special">(</span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/any.html" title="any"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">any</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span><span class="identifier">F</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">any</span><span class="special">(</span>
|
||||
<span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">seq</span><span class="special">,</span> <span class="identifier">F</span> <span class="identifier">f</span><span class="special">);</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id560239"></a><p class="title"><b>Table 1.38. Parameters</b></p>
|
||||
<a name="id1104017"></a><p class="title"><b>Table 1.38. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -63,19 +63,19 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">seq</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">seq</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a>, <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">)</span></tt> must be a valid expression, convertible
|
||||
to <tt class="computeroutput"><span class="keyword">bool</span></tt>, for each element
|
||||
<tt class="computeroutput"><span class="identifier">e</span></tt> in <tt class="computeroutput"><span class="identifier">seq</span></tt>
|
||||
Sequence</a>, <code class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">)</span></code> must be a valid expression, convertible
|
||||
to <code class="computeroutput"><span class="keyword">bool</span></code>, for each element
|
||||
<code class="computeroutput"><span class="identifier">e</span></code> in <code class="computeroutput"><span class="identifier">seq</span></code>
|
||||
</td>
|
||||
<td>The sequence
|
||||
to search</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">f</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">f</span></code></td>
|
||||
<td>A
|
||||
unary function object</td>
|
||||
<td>The search predicate</td>
|
||||
@@ -84,38 +84,38 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.query.functions.any.expression_semantics"></a><h6>
|
||||
<a name="id560389"></a>
|
||||
<a name="id1104150"></a>
|
||||
<a href="any.html#fusion.algorithms.query.functions.any.expression_semantics">Expression
|
||||
semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="any.html" title="any"><tt class="computeroutput"><span class="identifier">any</span></tt></a><span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">f</span><span class="special">);</span>
|
||||
<a href="any.html" title="any"><code class="computeroutput"><span class="identifier">any</span></code></a><span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">f</span><span class="special">);</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: <tt class="computeroutput"><span class="keyword">bool</span></tt>
|
||||
<span class="bold"><strong>Return type</strong></span>: <code class="computeroutput"><span class="keyword">bool</span></code>
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns true if and only
|
||||
if <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">)</span></tt>
|
||||
evaluates to <tt class="computeroutput"><span class="keyword">true</span></tt> for some
|
||||
element <tt class="computeroutput"><span class="identifier">e</span></tt> in <tt class="computeroutput"><span class="identifier">seq</span></tt>.
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns true if and only
|
||||
if <code class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">)</span></code>
|
||||
evaluates to <code class="computeroutput"><span class="keyword">true</span></code> for some
|
||||
element <code class="computeroutput"><span class="identifier">e</span></code> in <code class="computeroutput"><span class="identifier">seq</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.query.functions.any.complexity"></a><h6>
|
||||
<a name="id560552"></a>
|
||||
<a name="id1104293"></a>
|
||||
<a href="any.html#fusion.algorithms.query.functions.any.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Linear. At most <tt class="computeroutput"><a href="../../../sequences/intrinsics/metafunctions/size.html" title="size"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">size</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">>::</span><span class="identifier">value</span></tt> comparisons.
|
||||
Linear. At most <code class="computeroutput"><a href="../../../sequences/intrinsics/metafunctions/size.html" title="size"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">size</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">>::</span><span class="identifier">value</span></code> comparisons.
|
||||
</p>
|
||||
<a name="fusion.algorithms.query.functions.any.header"></a><h6>
|
||||
<a name="id560634"></a>
|
||||
<a name="id1104365"></a>
|
||||
<a href="any.html#fusion.algorithms.query.functions.any.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</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">query</span><span class="special">/</span><span class="identifier">any</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.algorithms.query.functions.any.example"></a><h6>
|
||||
<a name="id560739"></a>
|
||||
<a name="id1104457"></a>
|
||||
<a href="any.html#fusion.algorithms.query.functions.any.example">Example</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -128,8 +128,8 @@
|
||||
<span class="special">}</span>
|
||||
<span class="special">};</span>
|
||||
<span class="special">...</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="any.html" title="any"><tt class="computeroutput"><span class="identifier">any</span></tt></a><span class="special">(</span><a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><tt class="computeroutput"><span class="identifier">make_vector</span></tt></a><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">),</span> <span class="identifier">odd</span><span class="special">()));</span>
|
||||
<span class="identifier">assert</span><span class="special">(!</span><a href="any.html" title="any"><tt class="computeroutput"><span class="identifier">any</span></tt></a><span class="special">(</span><a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><tt class="computeroutput"><span class="identifier">make_vector</span></tt></a><span class="special">(</span><span class="number">2</span><span class="special">,</span><span class="number">4</span><span class="special">),</span> <span class="identifier">odd</span><span class="special">()));</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="any.html" title="any"><code class="computeroutput"><span class="identifier">any</span></code></a><span class="special">(</span><a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><code class="computeroutput"><span class="identifier">make_vector</span></code></a><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">),</span> <span class="identifier">odd</span><span class="special">()));</span>
|
||||
<span class="identifier">assert</span><span class="special">(!</span><a href="any.html" title="any"><code class="computeroutput"><span class="identifier">any</span></code></a><span class="special">(</span><a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><code class="computeroutput"><span class="identifier">make_vector</span></code></a><span class="special">(</span><span class="number">2</span><span class="special">,</span><span class="number">4</span><span class="special">),</span> <span class="identifier">odd</span><span class="special">()));</span>
|
||||
</pre>
|
||||
</div>
|
||||
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>count</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../functions.html" title="Functions">
|
||||
<link rel="prev" href="find_if.html" title="find_if">
|
||||
@@ -26,14 +26,14 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.query.functions.count"></a><a href="count.html" title="count">count</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.query.functions.count.description"></a><h6>
|
||||
<a name="id565502"></a>
|
||||
<a name="id1108683"></a>
|
||||
<a href="count.html#fusion.algorithms.query.functions.count.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
Returns the number of elements of a given type within a sequence.
|
||||
</p>
|
||||
<a name="fusion.algorithms.query.functions.count.synopsis"></a><h6>
|
||||
<a name="id565533"></a>
|
||||
<a name="id1108712"></a>
|
||||
<a href="count.html#fusion.algorithms.query.functions.count.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -41,11 +41,11 @@
|
||||
<span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">T</span>
|
||||
<span class="special">></span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/count.html" title="count"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">count</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">T</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">count</span><span class="special">(</span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/count.html" title="count"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">count</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">T</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">count</span><span class="special">(</span>
|
||||
<span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">seq</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">t</span><span class="special">);</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id565740"></a><p class="title"><b>Table 1.43. Parameters</b></p>
|
||||
<a name="id1108893"></a><p class="title"><b>Table 1.43. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -59,20 +59,20 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">seq</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">seq</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a>, <tt class="computeroutput"><span class="identifier">e</span> <span class="special">==</span> <span class="identifier">t</span></tt>
|
||||
must be a valid expression, convertible to <tt class="computeroutput"><span class="keyword">bool</span></tt>,
|
||||
for each element <tt class="computeroutput"><span class="identifier">e</span></tt>
|
||||
in <tt class="computeroutput"><span class="identifier">seq</span></tt>
|
||||
Sequence</a>, <code class="computeroutput"><span class="identifier">e</span> <span class="special">==</span> <span class="identifier">t</span></code>
|
||||
must be a valid expression, convertible to <code class="computeroutput"><span class="keyword">bool</span></code>,
|
||||
for each element <code class="computeroutput"><span class="identifier">e</span></code>
|
||||
in <code class="computeroutput"><span class="identifier">seq</span></code>
|
||||
</td>
|
||||
<td>The
|
||||
sequence to search</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">T</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">T</span></code></td>
|
||||
<td>Any
|
||||
type</td>
|
||||
<td>The type to count</td>
|
||||
@@ -81,42 +81,42 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.query.functions.count.expression_semantics"></a><h6>
|
||||
<a name="id565888"></a>
|
||||
<a name="id1109024"></a>
|
||||
<a href="count.html#fusion.algorithms.query.functions.count.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="count.html" title="count"><tt class="computeroutput"><span class="identifier">count</span></tt></a><span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">t</span><span class="special">);</span>
|
||||
<a href="count.html" title="count"><code class="computeroutput"><span class="identifier">count</span></code></a><span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">t</span><span class="special">);</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: <tt class="computeroutput"><span class="keyword">int</span></tt>
|
||||
<span class="bold"><strong>Return type</strong></span>: <code class="computeroutput"><span class="keyword">int</span></code>
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns the number of elements
|
||||
of type <tt class="computeroutput"><span class="identifier">T</span></tt> and equal to
|
||||
<tt class="computeroutput"><span class="identifier">t</span></tt> in <tt class="computeroutput"><span class="identifier">seq</span></tt>.
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns the number of elements
|
||||
of type <code class="computeroutput"><span class="identifier">T</span></code> and equal to
|
||||
<code class="computeroutput"><span class="identifier">t</span></code> in <code class="computeroutput"><span class="identifier">seq</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.query.functions.count.complexity"></a><h6>
|
||||
<a name="id566024"></a>
|
||||
<a name="id1109144"></a>
|
||||
<a href="count.html#fusion.algorithms.query.functions.count.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Linear. At most <tt class="computeroutput"><a href="../../../sequences/intrinsics/metafunctions/size.html" title="size"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">size</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">>::</span><span class="identifier">value</span></tt> comparisons.
|
||||
Linear. At most <code class="computeroutput"><a href="../../../sequences/intrinsics/metafunctions/size.html" title="size"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">size</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">>::</span><span class="identifier">value</span></code> comparisons.
|
||||
</p>
|
||||
<a name="fusion.algorithms.query.functions.count.header"></a><h6>
|
||||
<a name="id566107"></a>
|
||||
<a name="id1109217"></a>
|
||||
<a href="count.html#fusion.algorithms.query.functions.count.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</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">query</span><span class="special">/</span><span class="identifier">count</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.algorithms.query.functions.count.example"></a><h6>
|
||||
<a name="id566211"></a>
|
||||
<a name="id1109309"></a>
|
||||
<a href="count.html#fusion.algorithms.query.functions.count.example">Example</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">const</span> <a href="../../../sequences/containers/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special"><</span><span class="keyword">double</span><span class="special">,</span><span class="keyword">int</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="number">1.0</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="count.html" title="count"><tt class="computeroutput"><span class="identifier">count</span></tt></a><span class="special">(</span><span class="identifier">vec</span><span class="special">,</span><span class="number">2</span><span class="special">)</span> <span class="special">==</span> <span class="number">1</span><span class="special">);</span>
|
||||
<span class="keyword">const</span> <a href="../../../sequences/containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special"><</span><span class="keyword">double</span><span class="special">,</span><span class="keyword">int</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="number">1.0</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="count.html" title="count"><code class="computeroutput"><span class="identifier">count</span></code></a><span class="special">(</span><span class="identifier">vec</span><span class="special">,</span><span class="number">2</span><span class="special">)</span> <span class="special">==</span> <span class="number">1</span><span class="special">);</span>
|
||||
</pre>
|
||||
</div>
|
||||
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>count_if</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../functions.html" title="Functions">
|
||||
<link rel="prev" href="count.html" title="count">
|
||||
@@ -26,15 +26,15 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.query.functions.count_if"></a><a href="count_if.html" title="count_if">count_if</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.query.functions.count_if.description"></a><h6>
|
||||
<a name="id566427"></a>
|
||||
<a name="id1109500"></a>
|
||||
<a href="count_if.html#fusion.algorithms.query.functions.count_if.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
Returns the number of elements within a sequence with a type for which
|
||||
a given unary function object evaluates to <tt class="computeroutput"><span class="keyword">true</span></tt>.
|
||||
a given unary function object evaluates to <code class="computeroutput"><span class="keyword">true</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.query.functions.count_if.synopsis"></a><h6>
|
||||
<a name="id566469"></a>
|
||||
<a name="id1109538"></a>
|
||||
<a href="count_if.html#fusion.algorithms.query.functions.count_if.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -42,11 +42,11 @@
|
||||
<span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">F</span>
|
||||
<span class="special">></span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/count_if.html" title="count_if"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">count_if</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">F</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">count_if</span><span class="special">(</span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/count_if.html" title="count_if"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">count_if</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">F</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">count_if</span><span class="special">(</span>
|
||||
<span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">seq</span><span class="special">,</span> <span class="identifier">F</span> <span class="identifier">f</span><span class="special">);</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id566665"></a><p class="title"><b>Table 1.44. Parameters</b></p>
|
||||
<a name="id1109709"></a><p class="title"><b>Table 1.44. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -60,19 +60,19 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">seq</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">seq</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a>, <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">)</span></tt> is a valid expression, convertible
|
||||
to <tt class="computeroutput"><span class="keyword">bool</span></tt>, for each element
|
||||
<tt class="computeroutput"><span class="identifier">e</span></tt> in <tt class="computeroutput"><span class="identifier">seq</span></tt>
|
||||
Sequence</a>, <code class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">)</span></code> is a valid expression, convertible
|
||||
to <code class="computeroutput"><span class="keyword">bool</span></code>, for each element
|
||||
<code class="computeroutput"><span class="identifier">e</span></code> in <code class="computeroutput"><span class="identifier">seq</span></code>
|
||||
</td>
|
||||
<td>The sequence
|
||||
to search</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">f</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">f</span></code></td>
|
||||
<td>A
|
||||
unary function object</td>
|
||||
<td>The search predicate</td>
|
||||
@@ -81,41 +81,41 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.query.functions.count_if.expression_semantics"></a><h6>
|
||||
<a name="id566813"></a>
|
||||
<a name="id1109842"></a>
|
||||
<a href="count_if.html#fusion.algorithms.query.functions.count_if.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="count_if.html" title="count_if"><tt class="computeroutput"><span class="identifier">count_if</span></tt></a><span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">f</span><span class="special">)</span>
|
||||
<a href="count_if.html" title="count_if"><code class="computeroutput"><span class="identifier">count_if</span></code></a><span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">f</span><span class="special">)</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: <tt class="computeroutput"><span class="keyword">int</span></tt>
|
||||
<span class="bold"><strong>Return type</strong></span>: <code class="computeroutput"><span class="keyword">int</span></code>
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns the number of elements
|
||||
in <tt class="computeroutput"><span class="identifier">seq</span></tt> where <tt class="computeroutput"><span class="identifier">f</span></tt> evaluates to <tt class="computeroutput"><span class="keyword">true</span></tt>.
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns the number of elements
|
||||
in <code class="computeroutput"><span class="identifier">seq</span></code> where <code class="computeroutput"><span class="identifier">f</span></code> evaluates to <code class="computeroutput"><span class="keyword">true</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.query.functions.count_if.complexity"></a><h6>
|
||||
<a name="id566950"></a>
|
||||
<a name="id1109963"></a>
|
||||
<a href="count_if.html#fusion.algorithms.query.functions.count_if.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Linear. At most <tt class="computeroutput"><a href="../../../sequences/intrinsics/metafunctions/size.html" title="size"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">size</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">>::</span><span class="identifier">value</span></tt> comparisons.
|
||||
Linear. At most <code class="computeroutput"><a href="../../../sequences/intrinsics/metafunctions/size.html" title="size"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">size</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">>::</span><span class="identifier">value</span></code> comparisons.
|
||||
</p>
|
||||
<a name="fusion.algorithms.query.functions.count_if.header"></a><h6>
|
||||
<a name="id567032"></a>
|
||||
<a name="id1110035"></a>
|
||||
<a href="count_if.html#fusion.algorithms.query.functions.count_if.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</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">query</span><span class="special">/</span><span class="identifier">count_if</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.algorithms.query.functions.count_if.example"></a><h6>
|
||||
<a name="id567138"></a>
|
||||
<a name="id1110129"></a>
|
||||
<a href="count_if.html#fusion.algorithms.query.functions.count_if.example">Example</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">const</span> <a href="../../../sequences/containers/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special"><</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">></span> <span class="identifier">vec</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="count_if.html" title="count_if"><tt class="computeroutput"><span class="identifier">count_if</span></tt></a><span class="special">(</span><span class="identifier">vec</span><span class="special">,</span><span class="identifier">odd</span><span class="special">())</span> <span class="special">==</span> <span class="number">2</span><span class="special">);</span>
|
||||
<span class="keyword">const</span> <a href="../../../sequences/containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special"><</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">></span> <span class="identifier">vec</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="count_if.html" title="count_if"><code class="computeroutput"><span class="identifier">count_if</span></code></a><span class="special">(</span><span class="identifier">vec</span><span class="special">,</span><span class="identifier">odd</span><span class="special">())</span> <span class="special">==</span> <span class="number">2</span><span class="special">);</span>
|
||||
</pre>
|
||||
</div>
|
||||
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>find</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../functions.html" title="Functions">
|
||||
<link rel="prev" href="none.html" title="none">
|
||||
@@ -26,14 +26,14 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.query.functions.find"></a><a href="find.html" title="find">find</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.query.functions.find.description"></a><h6>
|
||||
<a name="id563388"></a>
|
||||
<a name="id1106795"></a>
|
||||
<a href="find.html#fusion.algorithms.query.functions.find.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
Finds the first element of a given type within a sequence.
|
||||
</p>
|
||||
<a name="fusion.algorithms.query.functions.find.synopsis"></a><h6>
|
||||
<a name="id563420"></a>
|
||||
<a name="id1106824"></a>
|
||||
<a href="find.html#fusion.algorithms.query.functions.find.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -50,7 +50,7 @@
|
||||
<span class="emphasis"><em>unspecified</em></span> <span class="identifier">find</span><span class="special">(</span><span class="identifier">Sequence</span><span class="special">&</span> <span class="identifier">seq</span><span class="special">);</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id563618"></a><p class="title"><b>Table 1.41. Parameters</b></p>
|
||||
<a name="id1106997"></a><p class="title"><b>Table 1.41. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -64,7 +64,7 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">seq</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">seq</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
@@ -73,7 +73,7 @@
|
||||
<td>The sequence to search</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">T</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">T</span></code></td>
|
||||
<td>Any
|
||||
type</td>
|
||||
<td>The type to search for</td>
|
||||
@@ -82,45 +82,45 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.query.functions.find.expression_semantics"></a><h6>
|
||||
<a name="id563712"></a>
|
||||
<a name="id1107081"></a>
|
||||
<a href="find.html#fusion.algorithms.query.functions.find.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="find.html" title="find"><tt class="computeroutput"><span class="identifier">find</span></tt></a><span class="special"><</span><span class="identifier">T</span><span class="special">>(</span><span class="identifier">seq</span><span class="special">)</span>
|
||||
<a href="find.html" title="find"><code class="computeroutput"><span class="identifier">find</span></code></a><span class="special"><</span><span class="identifier">T</span><span class="special">>(</span><span class="identifier">seq</span><span class="special">)</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: A model of the same iterator
|
||||
category as the iterators of <tt class="computeroutput"><span class="identifier">seq</span></tt>.
|
||||
<span class="bold"><strong>Return type</strong></span>: A model of the same iterator
|
||||
category as the iterators of <code class="computeroutput"><span class="identifier">seq</span></code>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns an iterator to the
|
||||
first element of <tt class="computeroutput"><span class="identifier">seq</span></tt>
|
||||
of type <tt class="computeroutput"><span class="identifier">T</span></tt>, or <tt class="computeroutput"><a href="../../../sequences/intrinsics/functions/end.html" title="end"><tt class="computeroutput"><span class="identifier">end</span></tt></a><span class="special">(</span><span class="identifier">seq</span><span class="special">)</span></tt> if there is no such element. Equivalent
|
||||
to <tt class="computeroutput"><a href="find_if.html" title="find_if"><tt class="computeroutput"><span class="identifier">find_if</span></tt></a><span class="special"><</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special"><</span><span class="identifier">_</span><span class="special">,</span> <span class="identifier">T</span><span class="special">></span> <span class="special">>(</span><span class="identifier">seq</span><span class="special">)</span></tt>
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns an iterator to the
|
||||
first element of <code class="computeroutput"><span class="identifier">seq</span></code>
|
||||
of type <code class="computeroutput"><span class="identifier">T</span></code>, or <code class="computeroutput"><a href="../../../sequences/intrinsics/functions/end.html" title="end"><code class="computeroutput"><span class="identifier">end</span></code></a><span class="special">(</span><span class="identifier">seq</span><span class="special">)</span></code> if there is no such element. Equivalent
|
||||
to <code class="computeroutput"><a href="find_if.html" title="find_if"><code class="computeroutput"><span class="identifier">find_if</span></code></a><span class="special"><</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special"><</span><span class="identifier">_</span><span class="special">,</span> <span class="identifier">T</span><span class="special">></span> <span class="special">>(</span><span class="identifier">seq</span><span class="special">)</span></code>
|
||||
</p>
|
||||
<a name="fusion.algorithms.query.functions.find.complexity"></a><h6>
|
||||
<a name="id563958"></a>
|
||||
<a name="id1107298"></a>
|
||||
<a href="find.html#fusion.algorithms.query.functions.find.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Linear. At most <tt class="computeroutput"><a href="../../../sequences/intrinsics/metafunctions/size.html" title="size"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">size</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">>::</span><span class="identifier">value</span></tt> comparisons.
|
||||
Linear. At most <code class="computeroutput"><a href="../../../sequences/intrinsics/metafunctions/size.html" title="size"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">size</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">>::</span><span class="identifier">value</span></code> comparisons.
|
||||
</p>
|
||||
<a name="fusion.algorithms.query.functions.find.header"></a><h6>
|
||||
<a name="id564040"></a>
|
||||
<a name="id1107371"></a>
|
||||
<a href="find.html#fusion.algorithms.query.functions.find.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</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">query</span><span class="special">/</span><span class="identifier">find</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.algorithms.query.functions.find.example"></a><h6>
|
||||
<a name="id564145"></a>
|
||||
<a name="id1107462"></a>
|
||||
<a href="find.html#fusion.algorithms.query.functions.find.example">Example</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">const</span> <a href="../../../sequences/containers/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special"><</span><span class="keyword">char</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="char">'a'</span><span class="special">,</span><span class="char">'0'</span><span class="special">);</span>
|
||||
<span class="identifier">assert</span><span class="special">(*</span><a href="find.html" title="find"><tt class="computeroutput"><span class="identifier">find</span></tt></a><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="char">'0'</span><span class="special">);</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="find.html" title="find"><tt class="computeroutput"><span class="identifier">find</span></tt></a><span class="special"><</span><span class="keyword">double</span><span class="special">>(</span><span class="identifier">vec</span><span class="special">)</span> <span class="special">==</span> <a href="../../../sequences/intrinsics/functions/end.html" title="end"><tt class="computeroutput"><span class="identifier">end</span></tt></a><span class="special">(</span><span class="identifier">vec</span><span class="special">));</span>
|
||||
<span class="keyword">const</span> <a href="../../../sequences/containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special"><</span><span class="keyword">char</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="char">'a'</span><span class="special">,</span><span class="char">'0'</span><span class="special">);</span>
|
||||
<span class="identifier">assert</span><span class="special">(*</span><a href="find.html" title="find"><code class="computeroutput"><span class="identifier">find</span></code></a><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="char">'0'</span><span class="special">);</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="find.html" title="find"><code class="computeroutput"><span class="identifier">find</span></code></a><span class="special"><</span><span class="keyword">double</span><span class="special">>(</span><span class="identifier">vec</span><span class="special">)</span> <span class="special">==</span> <a href="../../../sequences/intrinsics/functions/end.html" title="end"><code class="computeroutput"><span class="identifier">end</span></code></a><span class="special">(</span><span class="identifier">vec</span><span class="special">));</span>
|
||||
</pre>
|
||||
</div>
|
||||
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>find_if</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../functions.html" title="Functions">
|
||||
<link rel="prev" href="find.html" title="find">
|
||||
@@ -27,14 +27,15 @@
|
||||
<a name="fusion.algorithms.query.functions.find_if"></a><a href="find_if.html" title="find_if">find_if</a></h5></div></div></div>
|
||||
<p>
|
||||
Finds the first element within a sequence with a type for which a given
|
||||
MPL Lambda Expression evaluates to <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">true_</span></tt>.
|
||||
<a href="http://www.boost.org/libs/mpl/doc/refmanual/lambda-expression.html" target="_top">MPL
|
||||
Lambda Expression</a> evaluates to <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">true_</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.query.functions.find_if.description"></a><h6>
|
||||
<a name="id564463"></a>
|
||||
<a name="id1107752"></a>
|
||||
<a href="find_if.html#fusion.algorithms.query.functions.find_if.description">Description</a>
|
||||
</h6>
|
||||
<a name="fusion.algorithms.query.functions.find_if.synopsis"></a><h6>
|
||||
<a name="id564490"></a>
|
||||
<a name="id1107776"></a>
|
||||
<a href="find_if.html#fusion.algorithms.query.functions.find_if.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -51,7 +52,7 @@
|
||||
<span class="emphasis"><em>unspecified</em></span> <span class="identifier">find_if</span><span class="special">(</span><span class="identifier">Sequence</span><span class="special">&</span> <span class="identifier">seq</span><span class="special">);</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id564689"></a><p class="title"><b>Table 1.42. Parameters</b></p>
|
||||
<a name="id1107951"></a><p class="title"><b>Table 1.42. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -65,7 +66,7 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">seq</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">seq</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
@@ -74,55 +75,57 @@
|
||||
<td>The sequence to search</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">F</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">F</span></code></td>
|
||||
<td>A
|
||||
unary MPL Lambda Expression</td>
|
||||
unary <a href="http://www.boost.org/libs/mpl/doc/refmanual/lambda-expression.html" target="_top">MPL
|
||||
Lambda Expression</a>
|
||||
</td>
|
||||
<td>The search predicate</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.query.functions.find_if.expression_semantics"></a><h6>
|
||||
<a name="id564782"></a>
|
||||
<a name="id1108040"></a>
|
||||
<a href="find_if.html#fusion.algorithms.query.functions.find_if.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="find_if.html" title="find_if"><tt class="computeroutput"><span class="identifier">find_if</span></tt></a><span class="special"><</span><span class="identifier">F</span><span class="special">>(</span><span class="identifier">seq</span><span class="special">)</span>
|
||||
<a href="find_if.html" title="find_if"><code class="computeroutput"><span class="identifier">find_if</span></code></a><span class="special"><</span><span class="identifier">F</span><span class="special">>(</span><span class="identifier">seq</span><span class="special">)</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: An iterator of the same
|
||||
iterator category as the iterators of <tt class="computeroutput"><span class="identifier">seq</span></tt>.
|
||||
<span class="bold"><strong>Return type</strong></span>: An iterator of the same
|
||||
iterator category as the iterators of <code class="computeroutput"><span class="identifier">seq</span></code>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns the first element
|
||||
of <tt class="computeroutput"><span class="identifier">seq</span></tt> for which MPL
|
||||
Lambda Expression <tt class="computeroutput"><span class="identifier">F</span></tt> evaluates
|
||||
to <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">true_</span></tt>, or <tt class="computeroutput"><a href="../../../sequences/intrinsics/functions/end.html" title="end"><tt class="computeroutput"><span class="identifier">end</span></tt></a><span class="special">(</span><span class="identifier">seq</span><span class="special">)</span></tt>
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns the first element
|
||||
of <code class="computeroutput"><span class="identifier">seq</span></code> for which <a href="http://www.boost.org/libs/mpl/doc/refmanual/lambda-expression.html" target="_top">MPL
|
||||
Lambda Expression</a> <code class="computeroutput"><span class="identifier">F</span></code>
|
||||
evaluates to <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">true_</span></code>, or <code class="computeroutput"><a href="../../../sequences/intrinsics/functions/end.html" title="end"><code class="computeroutput"><span class="identifier">end</span></code></a><span class="special">(</span><span class="identifier">seq</span><span class="special">)</span></code>
|
||||
if there is no such element.
|
||||
</p>
|
||||
<a name="fusion.algorithms.query.functions.find_if.complexity"></a><h6>
|
||||
<a name="id564975"></a>
|
||||
<a name="id1108217"></a>
|
||||
<a href="find_if.html#fusion.algorithms.query.functions.find_if.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Linear. At most <tt class="computeroutput"><a href="../../../sequences/intrinsics/metafunctions/size.html" title="size"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">size</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">>::</span><span class="identifier">value</span></tt> comparisons.
|
||||
Linear. At most <code class="computeroutput"><a href="../../../sequences/intrinsics/metafunctions/size.html" title="size"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">size</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">>::</span><span class="identifier">value</span></code> comparisons.
|
||||
</p>
|
||||
<a name="fusion.algorithms.query.functions.find_if.header"></a><h6>
|
||||
<a name="id565057"></a>
|
||||
<a name="id1108289"></a>
|
||||
<a href="find_if.html#fusion.algorithms.query.functions.find_if.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</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">query</span><span class="special">/</span><span class="identifier">find_if</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.algorithms.query.functions.find_if.example"></a><h6>
|
||||
<a name="id565162"></a>
|
||||
<a name="id1108383"></a>
|
||||
<a href="find_if.html#fusion.algorithms.query.functions.find_if.example">Example</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">const</span> <a href="../../../sequences/containers/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special"><</span><span class="keyword">double</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="number">1.0</span><span class="special">,</span><span class="number">2</span><span class="special">);</span>
|
||||
<span class="identifier">assert</span><span class="special">(*</span><a href="find_if.html" title="find_if"><tt class="computeroutput"><span class="identifier">find_if</span></tt></a><span class="special"><</span><span class="identifier">is_integral</span><span class="special"><</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">_</span><span class="special">></span> <span class="special">>(</span><span class="identifier">vec</span><span class="special">)</span> <span class="special">==</span> <span class="number">2</span><span class="special">);</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="find_if.html" title="find_if"><tt class="computeroutput"><span class="identifier">find_if</span></tt></a><span class="special"><</span><span class="identifier">is_class</span><span class="special"><</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">_</span><span class="special">></span> <span class="special">>(</span><span class="identifier">vec</span><span class="special">)</span> <span class="special">==</span> <a href="../../../sequences/intrinsics/functions/end.html" title="end"><tt class="computeroutput"><span class="identifier">end</span></tt></a><span class="special">(</span><span class="identifier">vec</span><span class="special">));</span>
|
||||
<span class="keyword">const</span> <a href="../../../sequences/containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special"><</span><span class="keyword">double</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="number">1.0</span><span class="special">,</span><span class="number">2</span><span class="special">);</span>
|
||||
<span class="identifier">assert</span><span class="special">(*</span><a href="find_if.html" title="find_if"><code class="computeroutput"><span class="identifier">find_if</span></code></a><span class="special"><</span><span class="identifier">is_integral</span><span class="special"><</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">_</span><span class="special">></span> <span class="special">>(</span><span class="identifier">vec</span><span class="special">)</span> <span class="special">==</span> <span class="number">2</span><span class="special">);</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="find_if.html" title="find_if"><code class="computeroutput"><span class="identifier">find_if</span></code></a><span class="special"><</span><span class="identifier">is_class</span><span class="special"><</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">_</span><span class="special">></span> <span class="special">>(</span><span class="identifier">vec</span><span class="special">)</span> <span class="special">==</span> <a href="../../../sequences/intrinsics/functions/end.html" title="end"><code class="computeroutput"><span class="identifier">end</span></code></a><span class="special">(</span><span class="identifier">vec</span><span class="special">));</span>
|
||||
</pre>
|
||||
</div>
|
||||
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>none</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../functions.html" title="Functions">
|
||||
<link rel="prev" href="all.html" title="all">
|
||||
@@ -26,18 +26,18 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.query.functions.none"></a><a href="none.html" title="none">none</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.query.functions.none.description"></a><h6>
|
||||
<a name="id562218"></a>
|
||||
<a name="id1105764"></a>
|
||||
<a href="none.html#fusion.algorithms.query.functions.none.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
For a sequence <tt class="computeroutput"><span class="identifier">seq</span></tt> and
|
||||
unary function object <tt class="computeroutput"><span class="identifier">f</span></tt>,
|
||||
<tt class="computeroutput"><span class="identifier">none</span></tt> returns true if
|
||||
<tt class="computeroutput"><span class="identifier">f</span></tt> returns false for every
|
||||
element of <tt class="computeroutput"><span class="identifier">seq</span></tt>.
|
||||
For a sequence <code class="computeroutput"><span class="identifier">seq</span></code> and
|
||||
unary function object <code class="computeroutput"><span class="identifier">f</span></code>,
|
||||
<code class="computeroutput"><span class="identifier">none</span></code> returns true if
|
||||
<code class="computeroutput"><span class="identifier">f</span></code> returns false for every
|
||||
element of <code class="computeroutput"><span class="identifier">seq</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.query.functions.none.synopsis"></a><h6>
|
||||
<a name="id562300"></a>
|
||||
<a name="id1105837"></a>
|
||||
<a href="none.html#fusion.algorithms.query.functions.none.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -45,11 +45,11 @@
|
||||
<span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">F</span>
|
||||
<span class="special">></span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/none.html" title="none"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">none</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span><span class="identifier">F</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">none</span><span class="special">(</span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/none.html" title="none"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">none</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span><span class="identifier">F</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">none</span><span class="special">(</span>
|
||||
<span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">seq</span><span class="special">,</span> <span class="identifier">F</span> <span class="identifier">f</span><span class="special">);</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id562493"></a><p class="title"><b>Table 1.40. Parameters</b></p>
|
||||
<a name="id1106006"></a><p class="title"><b>Table 1.40. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -63,19 +63,19 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">seq</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">seq</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a>, <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">)</span></tt> is a valid expression, convertible
|
||||
to <tt class="computeroutput"><span class="keyword">bool</span></tt>, for every element
|
||||
<tt class="computeroutput"><span class="identifier">e</span></tt> in <tt class="computeroutput"><span class="identifier">seq</span></tt>
|
||||
Sequence</a>, <code class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">)</span></code> is a valid expression, convertible
|
||||
to <code class="computeroutput"><span class="keyword">bool</span></code>, for every element
|
||||
<code class="computeroutput"><span class="identifier">e</span></code> in <code class="computeroutput"><span class="identifier">seq</span></code>
|
||||
</td>
|
||||
<td>The sequence
|
||||
to search</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">f</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">f</span></code></td>
|
||||
<td>A
|
||||
unary function object</td>
|
||||
<td>The search predicate</td>
|
||||
@@ -84,38 +84,38 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.query.functions.none.expression_semantics"></a><h6>
|
||||
<a name="id562643"></a>
|
||||
<a name="id1106139"></a>
|
||||
<a href="none.html#fusion.algorithms.query.functions.none.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="none.html" title="none"><tt class="computeroutput"><span class="identifier">none</span></tt></a><span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">f</span><span class="special">);</span>
|
||||
<a href="none.html" title="none"><code class="computeroutput"><span class="identifier">none</span></code></a><span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">f</span><span class="special">);</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: <tt class="computeroutput"><span class="keyword">bool</span></tt>
|
||||
<span class="bold"><strong>Return type</strong></span>: <code class="computeroutput"><span class="keyword">bool</span></code>
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns true if and only
|
||||
if <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">)</span></tt>
|
||||
evaluates to <tt class="computeroutput"><span class="keyword">false</span></tt> for every
|
||||
element <tt class="computeroutput"><span class="identifier">e</span></tt> in <tt class="computeroutput"><span class="identifier">seq</span></tt>. Result equivalent to <tt class="computeroutput"><span class="special">!</span><span class="identifier">any</span><span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">f</span><span class="special">)</span></tt>.
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns true if and only
|
||||
if <code class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">)</span></code>
|
||||
evaluates to <code class="computeroutput"><span class="keyword">false</span></code> for every
|
||||
element <code class="computeroutput"><span class="identifier">e</span></code> in <code class="computeroutput"><span class="identifier">seq</span></code>. Result equivalent to <code class="computeroutput"><span class="special">!</span><span class="identifier">any</span><span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">f</span><span class="special">)</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.query.functions.none.complexity"></a><h6>
|
||||
<a name="id562848"></a>
|
||||
<a name="id1106317"></a>
|
||||
<a href="none.html#fusion.algorithms.query.functions.none.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Linear. At most <tt class="computeroutput"><a href="../../../sequences/intrinsics/metafunctions/size.html" title="size"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">size</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">>::</span><span class="identifier">value</span></tt> comparisons.
|
||||
Linear. At most <code class="computeroutput"><a href="../../../sequences/intrinsics/metafunctions/size.html" title="size"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">size</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">>::</span><span class="identifier">value</span></code> comparisons.
|
||||
</p>
|
||||
<a name="fusion.algorithms.query.functions.none.header"></a><h6>
|
||||
<a name="id562930"></a>
|
||||
<a name="id1106390"></a>
|
||||
<a href="none.html#fusion.algorithms.query.functions.none.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</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">query</span><span class="special">/</span><span class="identifier">none</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.algorithms.query.functions.none.example"></a><h6>
|
||||
<a name="id563035"></a>
|
||||
<a name="id1106481"></a>
|
||||
<a href="none.html#fusion.algorithms.query.functions.none.example">Example</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -128,8 +128,8 @@
|
||||
<span class="special">}</span>
|
||||
<span class="special">};</span>
|
||||
<span class="special">...</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="none.html" title="none"><tt class="computeroutput"><span class="identifier">none</span></tt></a><span class="special">(</span><a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><tt class="computeroutput"><span class="identifier">make_vector</span></tt></a><span class="special">(</span><span class="number">2</span><span class="special">,</span><span class="number">4</span><span class="special">),</span> <span class="identifier">odd</span><span class="special">()));</span>
|
||||
<span class="identifier">assert</span><span class="special">(!</span><a href="none.html" title="none"><tt class="computeroutput"><span class="identifier">none</span></tt></a><span class="special">(</span><a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><tt class="computeroutput"><span class="identifier">make_vector</span></tt></a><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">),</span> <span class="identifier">odd</span><span class="special">()));</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="none.html" title="none"><code class="computeroutput"><span class="identifier">none</span></code></a><span class="special">(</span><a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><code class="computeroutput"><span class="identifier">make_vector</span></code></a><span class="special">(</span><span class="number">2</span><span class="special">,</span><span class="number">4</span><span class="special">),</span> <span class="identifier">odd</span><span class="special">()));</span>
|
||||
<span class="identifier">assert</span><span class="special">(!</span><a href="none.html" title="none"><code class="computeroutput"><span class="identifier">none</span></code></a><span class="special">(</span><a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><code class="computeroutput"><span class="identifier">make_vector</span></code></a><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">),</span> <span class="identifier">odd</span><span class="special">()));</span>
|
||||
</pre>
|
||||
</div>
|
||||
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>Metafunctions</title>
|
||||
<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../query.html" title="Query">
|
||||
<link rel="prev" href="functions/count_if.html" title="count_if">
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>all</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../metafunctions.html" title="Metafunctions">
|
||||
<link rel="prev" href="any.html" title="any">
|
||||
@@ -26,14 +26,14 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.query.metafunctions.all"></a><a href="all.html" title="all">all</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.query.metafunctions.all.description"></a><h6>
|
||||
<a name="id567979"></a>
|
||||
<a name="id1110874"></a>
|
||||
<a href="all.html#fusion.algorithms.query.metafunctions.all.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
A metafunction returning the result type of <a href="../functions/all.html" title="all"><tt class="computeroutput"><span class="identifier">all</span></tt></a>.
|
||||
A metafunction returning the result type of <a href="../functions/all.html" title="all"><code class="computeroutput"><span class="identifier">all</span></code></a>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.query.metafunctions.all.synopsis"></a><h6>
|
||||
<a name="id568027"></a>
|
||||
<a name="id1110916"></a>
|
||||
<a href="all.html#fusion.algorithms.query.metafunctions.all.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -47,7 +47,7 @@
|
||||
<span class="special">};</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id568147"></a><p class="title"><b>Table 1.46. Parameters</b></p>
|
||||
<a name="id1111022"></a><p class="title"><b>Table 1.46. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -61,7 +61,7 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">Sequence</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">Sequence</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
@@ -70,9 +70,9 @@
|
||||
<td>Operation's argument</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">F</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">F</span></code></td>
|
||||
<td>A
|
||||
model of unary <a href="../../concepts/poly.html" title=" Polymorphic Function
|
||||
model of unary <a href="../../../functional/concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic
|
||||
Function Object</a>
|
||||
</td>
|
||||
@@ -82,34 +82,34 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.query.metafunctions.all.expression_semantics"></a><h6>
|
||||
<a name="id568248"></a>
|
||||
<a name="id1111112"></a>
|
||||
<a href="all.html#fusion.algorithms.query.metafunctions.all.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="all.html" title="all"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">all</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">F</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<a href="all.html" title="all"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">all</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">F</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: <tt class="computeroutput"><span class="keyword">bool</span></tt>.
|
||||
<span class="bold"><strong>Return type</strong></span>: <code class="computeroutput"><span class="keyword">bool</span></code>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns the return type of
|
||||
<a href="../functions/all.html" title="all"><tt class="computeroutput"><span class="identifier">all</span></tt></a>
|
||||
given a sequence of type <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
|
||||
and a unary <a href="../../concepts/poly.html" title=" Polymorphic Function
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns the return type of
|
||||
<a href="../functions/all.html" title="all"><code class="computeroutput"><span class="identifier">all</span></code></a>
|
||||
given a sequence of type <code class="computeroutput"><span class="identifier">Sequence</span></code>
|
||||
and a unary <a href="../../../functional/concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic
|
||||
Function Object</a> of type <tt class="computeroutput"><span class="identifier">F</span></tt>.
|
||||
The return type is always <tt class="computeroutput"><span class="keyword">bool</span></tt>.
|
||||
Function Object</a> of type <code class="computeroutput"><span class="identifier">F</span></code>.
|
||||
The return type is always <code class="computeroutput"><span class="keyword">bool</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.query.metafunctions.all.complexity"></a><h6>
|
||||
<a name="id568428"></a>
|
||||
<a name="id1111270"></a>
|
||||
<a href="all.html#fusion.algorithms.query.metafunctions.all.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Constant.
|
||||
</p>
|
||||
<a name="fusion.algorithms.query.metafunctions.all.header"></a><h6>
|
||||
<a name="id568459"></a>
|
||||
<a name="id1111298"></a>
|
||||
<a href="all.html#fusion.algorithms.query.metafunctions.all.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>any</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../metafunctions.html" title="Metafunctions">
|
||||
<link rel="prev" href="../metafunctions.html" title="Metafunctions">
|
||||
@@ -26,14 +26,14 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.query.metafunctions.any"></a><a href="any.html" title="any">any</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.query.metafunctions.any.description"></a><h6>
|
||||
<a name="id567375"></a>
|
||||
<a name="id1110339"></a>
|
||||
<a href="any.html#fusion.algorithms.query.metafunctions.any.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
A metafunction returning the result type of <a href="../functions/any.html" title="any"><tt class="computeroutput"><span class="identifier">any</span></tt></a>.
|
||||
A metafunction returning the result type of <a href="../functions/any.html" title="any"><code class="computeroutput"><span class="identifier">any</span></code></a>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.query.metafunctions.any.synopsis"></a><h6>
|
||||
<a name="id567422"></a>
|
||||
<a name="id1110381"></a>
|
||||
<a href="any.html#fusion.algorithms.query.metafunctions.any.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -47,7 +47,7 @@
|
||||
<span class="special">};</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id567542"></a><p class="title"><b>Table 1.45. Parameters</b></p>
|
||||
<a name="id1110487"></a><p class="title"><b>Table 1.45. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -61,7 +61,7 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">Sequence</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">Sequence</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
@@ -70,9 +70,9 @@
|
||||
<td>Operation's argument</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">F</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">F</span></code></td>
|
||||
<td>A
|
||||
model of unary <a href="../../concepts/poly.html" title=" Polymorphic Function
|
||||
model of unary <a href="../../../functional/concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic
|
||||
Function Object</a>
|
||||
</td>
|
||||
@@ -82,34 +82,34 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.query.metafunctions.any.expression_semantics"></a><h6>
|
||||
<a name="id567644"></a>
|
||||
<a name="id1110577"></a>
|
||||
<a href="any.html#fusion.algorithms.query.metafunctions.any.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="any.html" title="any"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">any</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">F</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<a href="any.html" title="any"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">any</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">F</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: <tt class="computeroutput"><span class="keyword">bool</span></tt>.
|
||||
<span class="bold"><strong>Return type</strong></span>: <code class="computeroutput"><span class="keyword">bool</span></code>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns the return type of
|
||||
<a href="../functions/any.html" title="any"><tt class="computeroutput"><span class="identifier">any</span></tt></a>
|
||||
given a sequence of type <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
|
||||
and a unary <a href="../../concepts/poly.html" title=" Polymorphic Function
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns the return type of
|
||||
<a href="../functions/any.html" title="any"><code class="computeroutput"><span class="identifier">any</span></code></a>
|
||||
given a sequence of type <code class="computeroutput"><span class="identifier">Sequence</span></code>
|
||||
and a unary <a href="../../../functional/concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic
|
||||
Function Object</a> of type <tt class="computeroutput"><span class="identifier">F</span></tt>.
|
||||
The return type is always <tt class="computeroutput"><span class="keyword">bool</span></tt>.
|
||||
Function Object</a> of type <code class="computeroutput"><span class="identifier">F</span></code>.
|
||||
The return type is always <code class="computeroutput"><span class="keyword">bool</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.query.metafunctions.any.complexity"></a><h6>
|
||||
<a name="id567824"></a>
|
||||
<a name="id1110736"></a>
|
||||
<a href="any.html#fusion.algorithms.query.metafunctions.any.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Constant.
|
||||
</p>
|
||||
<a name="fusion.algorithms.query.metafunctions.any.header"></a><h6>
|
||||
<a name="id567854"></a>
|
||||
<a name="id1110764"></a>
|
||||
<a href="any.html#fusion.algorithms.query.metafunctions.any.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>count</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../metafunctions.html" title="Metafunctions">
|
||||
<link rel="prev" href="find_if.html" title="find_if">
|
||||
@@ -26,15 +26,15 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.query.metafunctions.count"></a><a href="count.html" title="count">count</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.query.metafunctions.count.description"></a><h6>
|
||||
<a name="id570511"></a>
|
||||
<a name="id1113120"></a>
|
||||
<a href="count.html#fusion.algorithms.query.metafunctions.count.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
A metafunction that returns the result type of <tt class="computeroutput"><span class="identifier">count</span></tt>
|
||||
A metafunction that returns the result type of <code class="computeroutput"><span class="identifier">count</span></code>
|
||||
given the sequence and search types.
|
||||
</p>
|
||||
<a name="fusion.algorithms.query.metafunctions.count.synopsis"></a><h6>
|
||||
<a name="id570554"></a>
|
||||
<a name="id1113158"></a>
|
||||
<a href="count.html#fusion.algorithms.query.metafunctions.count.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -48,7 +48,7 @@
|
||||
<span class="special">};</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id570674"></a><p class="title"><b>Table 1.50. Parameters</b></p>
|
||||
<a name="id1113264"></a><p class="title"><b>Table 1.50. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -63,7 +63,7 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">Sequence</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">Sequence</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
@@ -72,7 +72,7 @@
|
||||
<td>Operation's argument</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">T</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">T</span></code></td>
|
||||
<td>Any
|
||||
type</td>
|
||||
<td>Operation's argument</td>
|
||||
@@ -81,30 +81,30 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.query.metafunctions.count.expression_semantics"></a><h6>
|
||||
<a name="id570769"></a>
|
||||
<a name="id1113350"></a>
|
||||
<a href="count.html#fusion.algorithms.query.metafunctions.count.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="count.html" title="count"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">count</span></tt></a><span class="special"><</span><span class="identifier">T</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<a href="count.html" title="count"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">count</span></code></a><span class="special"><</span><span class="identifier">T</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: <tt class="computeroutput"><span class="keyword">int</span></tt>.
|
||||
<span class="bold"><strong>Return type</strong></span>: <code class="computeroutput"><span class="keyword">int</span></code>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns the return type of
|
||||
<a href="../functions/count.html" title="count"><tt class="computeroutput"><span class="identifier">count</span></tt></a>. The return type is always
|
||||
<tt class="computeroutput"><span class="keyword">int</span></tt>.
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns the return type of
|
||||
<a href="../functions/count.html" title="count"><code class="computeroutput"><span class="identifier">count</span></code></a>. The return type is always
|
||||
<code class="computeroutput"><span class="keyword">int</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.query.metafunctions.count.complexity"></a><h6>
|
||||
<a name="id570908"></a>
|
||||
<a name="id1113471"></a>
|
||||
<a href="count.html#fusion.algorithms.query.metafunctions.count.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Constant.
|
||||
</p>
|
||||
<a name="fusion.algorithms.query.metafunctions.count.header"></a><h6>
|
||||
<a name="id570938"></a>
|
||||
<a name="id1113499"></a>
|
||||
<a href="count.html#fusion.algorithms.query.metafunctions.count.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>count_if</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../metafunctions.html" title="Metafunctions">
|
||||
<link rel="prev" href="count.html" title="count">
|
||||
@@ -26,15 +26,15 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.query.metafunctions.count_if"></a><a href="count_if.html" title="count_if">count_if</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.query.metafunctions.count_if.description"></a><h6>
|
||||
<a name="id571064"></a>
|
||||
<a name="id1113609"></a>
|
||||
<a href="count_if.html#fusion.algorithms.query.metafunctions.count_if.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
A metafunction that returns the result type of <tt class="computeroutput"><span class="identifier">count_if</span></tt>
|
||||
A metafunction that returns the result type of <code class="computeroutput"><span class="identifier">count_if</span></code>
|
||||
given the sequence and predicate types.
|
||||
</p>
|
||||
<a name="fusion.algorithms.query.metafunctions.count_if.synopsis"></a><h6>
|
||||
<a name="id571106"></a>
|
||||
<a name="id1113648"></a>
|
||||
<a href="count_if.html#fusion.algorithms.query.metafunctions.count_if.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -48,7 +48,7 @@
|
||||
<span class="special">};</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id571227"></a><p class="title"><b>Table 1.51. Parameters</b></p>
|
||||
<a name="id1113754"></a><p class="title"><b>Table 1.51. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -62,7 +62,7 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">Sequence</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">Sequence</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
@@ -71,7 +71,7 @@
|
||||
<td>Operation's argument</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">Pred</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">Pred</span></code></td>
|
||||
<td>A
|
||||
unary function object</td>
|
||||
<td>Operation's argument</td>
|
||||
@@ -80,30 +80,30 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.query.metafunctions.count_if.expression_semantics"></a><h6>
|
||||
<a name="id571322"></a>
|
||||
<a name="id1113840"></a>
|
||||
<a href="count_if.html#fusion.algorithms.query.metafunctions.count_if.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="count_if.html" title="count_if"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">count_if</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">Pred</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<a href="count_if.html" title="count_if"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">count_if</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">Pred</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: <tt class="computeroutput"><span class="keyword">int</span></tt>.
|
||||
<span class="bold"><strong>Return type</strong></span>: <code class="computeroutput"><span class="keyword">int</span></code>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns the return type of
|
||||
<a href="../functions/count_if.html" title="count_if"><tt class="computeroutput"><span class="identifier">count_if</span></tt></a>. The return type is
|
||||
always <tt class="computeroutput"><span class="keyword">int</span></tt>.
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns the return type of
|
||||
<a href="../functions/count_if.html" title="count_if"><code class="computeroutput"><span class="identifier">count_if</span></code></a>. The return type is
|
||||
always <code class="computeroutput"><span class="keyword">int</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.query.metafunctions.count_if.complexity"></a><h6>
|
||||
<a name="id571473"></a>
|
||||
<a name="id1113971"></a>
|
||||
<a href="count_if.html#fusion.algorithms.query.metafunctions.count_if.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Constant.
|
||||
</p>
|
||||
<a name="fusion.algorithms.query.metafunctions.count_if.header"></a><h6>
|
||||
<a name="id571504"></a>
|
||||
<a name="id1113999"></a>
|
||||
<a href="count_if.html#fusion.algorithms.query.metafunctions.count_if.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>find</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../metafunctions.html" title="Metafunctions">
|
||||
<link rel="prev" href="none.html" title="none">
|
||||
@@ -26,15 +26,15 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.query.metafunctions.find"></a><a href="find.html" title="find">find</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.query.metafunctions.find.description"></a><h6>
|
||||
<a name="id569192"></a>
|
||||
<a name="id1111947"></a>
|
||||
<a href="find.html#fusion.algorithms.query.metafunctions.find.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
Returns the result type of <tt class="computeroutput"><span class="identifier">find</span></tt>,
|
||||
Returns the result type of <code class="computeroutput"><span class="identifier">find</span></code>,
|
||||
given the sequence and search types.
|
||||
</p>
|
||||
<a name="fusion.algorithms.query.metafunctions.find.synopsis"></a><h6>
|
||||
<a name="id569234"></a>
|
||||
<a name="id1111985"></a>
|
||||
<a href="find.html#fusion.algorithms.query.metafunctions.find.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -48,7 +48,7 @@
|
||||
<span class="special">};</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id569351"></a><p class="title"><b>Table 1.48. Parameters</b></p>
|
||||
<a name="id1112088"></a><p class="title"><b>Table 1.48. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -62,7 +62,7 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">Sequence</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">Sequence</span></code></td>
|
||||
<td>Model
|
||||
of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
@@ -71,7 +71,7 @@
|
||||
<td>Operation's argument</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">T</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">T</span></code></td>
|
||||
<td>Any
|
||||
type</td>
|
||||
<td>Operation's argument</td>
|
||||
@@ -80,31 +80,31 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.query.metafunctions.find.expression_semantics"></a><h6>
|
||||
<a name="id569445"></a>
|
||||
<a name="id1112172"></a>
|
||||
<a href="find.html#fusion.algorithms.query.metafunctions.find.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="find.html" title="find"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">find</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">T</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<a href="find.html" title="find"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">find</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">T</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: A model of the same iterator
|
||||
category as the iterators of <tt class="computeroutput"><span class="identifier">Sequence</span></tt>.
|
||||
<span class="bold"><strong>Return type</strong></span>: A model of the same iterator
|
||||
category as the iterators of <code class="computeroutput"><span class="identifier">Sequence</span></code>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns an iterator to the
|
||||
first element of type <tt class="computeroutput"><span class="identifier">T</span></tt>
|
||||
in <tt class="computeroutput"><span class="identifier">Sequence</span></tt>, or <tt class="computeroutput"><a href="../../../sequences/intrinsics/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"><</span><span class="identifier">Sequence</span><span class="special">>::</span><span class="identifier">type</span></tt> if there is no such element.
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns an iterator to the
|
||||
first element of type <code class="computeroutput"><span class="identifier">T</span></code>
|
||||
in <code class="computeroutput"><span class="identifier">Sequence</span></code>, or <code class="computeroutput"><a href="../../../sequences/intrinsics/metafunctions/end.html" title="end"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">end</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">>::</span><span class="identifier">type</span></code> if there is no such element.
|
||||
</p>
|
||||
<a name="fusion.algorithms.query.metafunctions.find.complexity"></a><h6>
|
||||
<a name="id569641"></a>
|
||||
<a name="id1112344"></a>
|
||||
<a href="find.html#fusion.algorithms.query.metafunctions.find.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Linear, at most <tt class="computeroutput"><a href="../../../sequences/intrinsics/metafunctions/size.html" title="size"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">size</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">>::</span><span class="identifier">value</span></tt> comparisons.
|
||||
Linear, at most <code class="computeroutput"><a href="../../../sequences/intrinsics/metafunctions/size.html" title="size"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">size</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">>::</span><span class="identifier">value</span></code> comparisons.
|
||||
</p>
|
||||
<a name="fusion.algorithms.query.metafunctions.find.header"></a><h6>
|
||||
<a name="id569723"></a>
|
||||
<a name="id1112417"></a>
|
||||
<a href="find.html#fusion.algorithms.query.metafunctions.find.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>find_if</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../metafunctions.html" title="Metafunctions">
|
||||
<link rel="prev" href="find.html" title="find">
|
||||
@@ -26,15 +26,15 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.query.metafunctions.find_if"></a><a href="find_if.html" title="find_if">find_if</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.query.metafunctions.find_if.description"></a><h6>
|
||||
<a name="id569851"></a>
|
||||
<a name="id1112529"></a>
|
||||
<a href="find_if.html#fusion.algorithms.query.metafunctions.find_if.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
Returns the result type of <tt class="computeroutput"><span class="identifier">find_if</span></tt>
|
||||
Returns the result type of <code class="computeroutput"><span class="identifier">find_if</span></code>
|
||||
given the sequence and predicate types.
|
||||
</p>
|
||||
<a name="fusion.algorithms.query.metafunctions.find_if.synopsis"></a><h6>
|
||||
<a name="id569893"></a>
|
||||
<a name="id1112567"></a>
|
||||
<a href="find_if.html#fusion.algorithms.query.metafunctions.find_if.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -48,7 +48,7 @@
|
||||
<span class="special">};</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id570011"></a><p class="title"><b>Table 1.49. Parameters</b></p>
|
||||
<a name="id1112671"></a><p class="title"><b>Table 1.49. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -62,7 +62,7 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">Sequence</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">Sequence</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
@@ -71,41 +71,43 @@
|
||||
<td>Operation's argument</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">Pred</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">Pred</span></code></td>
|
||||
<td>A
|
||||
model of MPL Lambda Expression</td>
|
||||
model of <a href="http://www.boost.org/libs/mpl/doc/refmanual/lambda-expression.html" target="_top">MPL
|
||||
Lambda Expression</a>
|
||||
</td>
|
||||
<td>Operation's arguments</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.query.metafunctions.find_if.expression_semantics"></a><h6>
|
||||
<a name="id570105"></a>
|
||||
<a name="id1112763"></a>
|
||||
<a href="find_if.html#fusion.algorithms.query.metafunctions.find_if.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="find_if.html" title="find_if"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">find_if</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">Pred</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<a href="find_if.html" title="find_if"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">find_if</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">Pred</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: A model of the same iterator
|
||||
category as the iterators of <tt class="computeroutput"><span class="identifier">Sequence</span></tt>.
|
||||
<span class="bold"><strong>Return type</strong></span>: A model of the same iterator
|
||||
category as the iterators of <code class="computeroutput"><span class="identifier">Sequence</span></code>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns an iterator to the
|
||||
first element in <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
|
||||
for which <tt class="computeroutput"><span class="identifier">Pred</span></tt> evaluates
|
||||
to true. Returns <tt class="computeroutput"><a href="../../../sequences/intrinsics/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"><</span><span class="identifier">Sequence</span><span class="special">>::</span><span class="identifier">type</span></tt> if there is no such element.
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns an iterator to the
|
||||
first element in <code class="computeroutput"><span class="identifier">Sequence</span></code>
|
||||
for which <code class="computeroutput"><span class="identifier">Pred</span></code> evaluates
|
||||
to true. Returns <code class="computeroutput"><a href="../../../sequences/intrinsics/metafunctions/end.html" title="end"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">end</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">>::</span><span class="identifier">type</span></code> if there is no such element.
|
||||
</p>
|
||||
<a name="fusion.algorithms.query.metafunctions.find_if.complexity"></a><h6>
|
||||
<a name="id570303"></a>
|
||||
<a name="id1112936"></a>
|
||||
<a href="find_if.html#fusion.algorithms.query.metafunctions.find_if.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Linear. At most <tt class="computeroutput"><a href="../../../sequences/intrinsics/metafunctions/size.html" title="size"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">size</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">>::</span><span class="identifier">value</span></tt> comparisons.
|
||||
Linear. At most <code class="computeroutput"><a href="../../../sequences/intrinsics/metafunctions/size.html" title="size"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">size</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">>::</span><span class="identifier">value</span></code> comparisons.
|
||||
</p>
|
||||
<a name="fusion.algorithms.query.metafunctions.find_if.header"></a><h6>
|
||||
<a name="id570386"></a>
|
||||
<a name="id1113009"></a>
|
||||
<a href="find_if.html#fusion.algorithms.query.metafunctions.find_if.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>none</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../metafunctions.html" title="Metafunctions">
|
||||
<link rel="prev" href="all.html" title="all">
|
||||
@@ -26,14 +26,14 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.query.metafunctions.none"></a><a href="none.html" title="none">none</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.query.metafunctions.none.description"></a><h6>
|
||||
<a name="id568583"></a>
|
||||
<a name="id1111409"></a>
|
||||
<a href="none.html#fusion.algorithms.query.metafunctions.none.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
A metafunction returning the result type of <a href="../functions/none.html" title="none"><tt class="computeroutput"><span class="identifier">none</span></tt></a>.
|
||||
A metafunction returning the result type of <a href="../functions/none.html" title="none"><code class="computeroutput"><span class="identifier">none</span></code></a>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.query.metafunctions.none.synopsis"></a><h6>
|
||||
<a name="id568632"></a>
|
||||
<a name="id1111452"></a>
|
||||
<a href="none.html#fusion.algorithms.query.metafunctions.none.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -47,7 +47,7 @@
|
||||
<span class="special">};</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id568752"></a><p class="title"><b>Table 1.47. Parameters</b></p>
|
||||
<a name="id1111558"></a><p class="title"><b>Table 1.47. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -61,7 +61,7 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">Sequence</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">Sequence</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
@@ -70,9 +70,9 @@
|
||||
<td>Operation's argument</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">F</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">F</span></code></td>
|
||||
<td>A
|
||||
model of unary <a href="../../concepts/poly.html" title=" Polymorphic Function
|
||||
model of unary <a href="../../../functional/concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic
|
||||
Function Object</a>
|
||||
</td>
|
||||
@@ -82,34 +82,34 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.query.metafunctions.none.expression_semantics"></a><h6>
|
||||
<a name="id568854"></a>
|
||||
<a name="id1111648"></a>
|
||||
<a href="none.html#fusion.algorithms.query.metafunctions.none.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="none.html" title="none"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">none</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">F</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<a href="none.html" title="none"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">none</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">F</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: <tt class="computeroutput"><span class="keyword">bool</span></tt>.
|
||||
<span class="bold"><strong>Return type</strong></span>: <code class="computeroutput"><span class="keyword">bool</span></code>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns the return type of
|
||||
<a href="../functions/none.html" title="none"><tt class="computeroutput"><span class="identifier">none</span></tt></a> given a sequence of type
|
||||
<tt class="computeroutput"><span class="identifier">Sequence</span></tt> and a unary
|
||||
<a href="../../concepts/poly.html" title=" Polymorphic Function
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns the return type of
|
||||
<a href="../functions/none.html" title="none"><code class="computeroutput"><span class="identifier">none</span></code></a> given a sequence of type
|
||||
<code class="computeroutput"><span class="identifier">Sequence</span></code> and a unary
|
||||
<a href="../../../functional/concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic Function
|
||||
Object</a> of type <tt class="computeroutput"><span class="identifier">F</span></tt>.
|
||||
The return type is always <tt class="computeroutput"><span class="keyword">bool</span></tt>.
|
||||
Object</a> of type <code class="computeroutput"><span class="identifier">F</span></code>.
|
||||
The return type is always <code class="computeroutput"><span class="keyword">bool</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.query.metafunctions.none.complexity"></a><h6>
|
||||
<a name="id569034"></a>
|
||||
<a name="id1111807"></a>
|
||||
<a href="none.html#fusion.algorithms.query.metafunctions.none.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Constant.
|
||||
</p>
|
||||
<a name="fusion.algorithms.query.metafunctions.none.header"></a><h6>
|
||||
<a name="id569064"></a>
|
||||
<a name="id1111835"></a>
|
||||
<a href="none.html#fusion.algorithms.query.metafunctions.none.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>Transformation</title>
|
||||
<link rel="stylesheet" href="../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../algorithms.html" title="Algorithms">
|
||||
<link rel="prev" href="query/metafunctions/count_if.html" title="count_if">
|
||||
@@ -27,7 +27,49 @@
|
||||
<a name="fusion.algorithms.transformation"></a><a href="transformation.html" title="Transformation">Transformation</a></h3></div></div></div>
|
||||
<div class="toc"><dl>
|
||||
<dt><span class="section"><a href="transformation/functions.html">Functions</a></span></dt>
|
||||
<dd><dl>
|
||||
<dt><span class="section"><a href="transformation/functions/filter.html">filter</a></span></dt>
|
||||
<dt><span class="section"><a href="transformation/functions/filter_if.html">filter_if</a></span></dt>
|
||||
<dt><span class="section"><a href="transformation/functions/transform.html">transform</a></span></dt>
|
||||
<dt><span class="section"><a href="transformation/functions/replace.html">replace</a></span></dt>
|
||||
<dt><span class="section"><a href="transformation/functions/replace_if.html">replace_if</a></span></dt>
|
||||
<dt><span class="section"><a href="transformation/functions/remove.html">remove</a></span></dt>
|
||||
<dt><span class="section"><a href="transformation/functions/remove_if.html">remove_if</a></span></dt>
|
||||
<dt><span class="section"><a href="transformation/functions/reverse.html">reverse</a></span></dt>
|
||||
<dt><span class="section"><a href="transformation/functions/clear.html">clear</a></span></dt>
|
||||
<dt><span class="section"><a href="transformation/functions/erase.html">erase</a></span></dt>
|
||||
<dt><span class="section"><a href="transformation/functions/erase_key.html">erase_key</a></span></dt>
|
||||
<dt><span class="section"><a href="transformation/functions/insert.html">insert</a></span></dt>
|
||||
<dt><span class="section"><a href="transformation/functions/insert_range.html">insert_range</a></span></dt>
|
||||
<dt><span class="section"><a href="transformation/functions/join.html">join</a></span></dt>
|
||||
<dt><span class="section"><a href="transformation/functions/zip.html">zip</a></span></dt>
|
||||
<dt><span class="section"><a href="transformation/functions/pop_back.html">pop_back</a></span></dt>
|
||||
<dt><span class="section"><a href="transformation/functions/pop_front.html">pop_front</a></span></dt>
|
||||
<dt><span class="section"><a href="transformation/functions/push_back.html">push_back</a></span></dt>
|
||||
<dt><span class="section"><a href="transformation/functions/push_front.html">push_front</a></span></dt>
|
||||
</dl></dd>
|
||||
<dt><span class="section"><a href="transformation/metafunctions.html">Metafunctions</a></span></dt>
|
||||
<dd><dl>
|
||||
<dt><span class="section"><a href="transformation/metafunctions/filter.html">filter</a></span></dt>
|
||||
<dt><span class="section"><a href="transformation/metafunctions/filter_if.html">filter_if</a></span></dt>
|
||||
<dt><span class="section"><a href="transformation/metafunctions/transform.html">transform</a></span></dt>
|
||||
<dt><span class="section"><a href="transformation/metafunctions/replace.html">replace</a></span></dt>
|
||||
<dt><span class="section"><a href="transformation/metafunctions/replace_if.html">replace_if</a></span></dt>
|
||||
<dt><span class="section"><a href="transformation/metafunctions/remove.html">remove</a></span></dt>
|
||||
<dt><span class="section"><a href="transformation/metafunctions/remove_if.html">remove_if</a></span></dt>
|
||||
<dt><span class="section"><a href="transformation/metafunctions/reverse.html">reverse</a></span></dt>
|
||||
<dt><span class="section"><a href="transformation/metafunctions/clear.html">clear</a></span></dt>
|
||||
<dt><span class="section"><a href="transformation/metafunctions/erase.html">erase</a></span></dt>
|
||||
<dt><span class="section"><a href="transformation/metafunctions/erase_key.html">erase_key</a></span></dt>
|
||||
<dt><span class="section"><a href="transformation/metafunctions/insert.html">insert</a></span></dt>
|
||||
<dt><span class="section"><a href="transformation/metafunctions/insert_range.html">insert_range</a></span></dt>
|
||||
<dt><span class="section"><a href="transformation/metafunctions/join.html">join</a></span></dt>
|
||||
<dt><span class="section"><a href="transformation/metafunctions/zip.html">zip</a></span></dt>
|
||||
<dt><span class="section"><a href="transformation/metafunctions/pop_back.html">pop_back</a></span></dt>
|
||||
<dt><span class="section"><a href="transformation/metafunctions/pop_front.html">pop_front</a></span></dt>
|
||||
<dt><span class="section"><a href="transformation/metafunctions/push_back.html">push_back</a></span></dt>
|
||||
<dt><span class="section"><a href="transformation/metafunctions/push_front.html">push_front</a></span></dt>
|
||||
</dl></dd>
|
||||
</dl></div>
|
||||
<p>
|
||||
The transformation algorithms create new sequences out of existing sequences
|
||||
@@ -39,14 +81,14 @@
|
||||
<td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="../../images/note.png"></td>
|
||||
<th align="left">Note</th>
|
||||
</tr>
|
||||
<tr><td colspan="2" align="left" valign="top"><p>
|
||||
<tr><td align="left" valign="top"><p>
|
||||
As the transformation algorithms return views onto their input arguments,
|
||||
it is important that the lifetime of the input arguments is greater than
|
||||
the period during which you wish to use the results.
|
||||
</p></td></tr>
|
||||
</table></div>
|
||||
<a name="fusion.algorithms.transformation.header"></a><h4>
|
||||
<a name="id571652"></a>
|
||||
<a name="id1114131"></a>
|
||||
<a href="transformation.html#fusion.algorithms.transformation.header">Header</a>
|
||||
</h4>
|
||||
<pre class="programlisting">
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>Functions</title>
|
||||
<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../transformation.html" title="Transformation">
|
||||
<link rel="prev" href="../transformation.html" title="Transformation">
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>clear</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../functions.html" title="Functions">
|
||||
<link rel="prev" href="reverse.html" title="reverse">
|
||||
@@ -26,24 +26,24 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.transformation.functions.clear"></a><a href="clear.html" title="clear">clear</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.transformation.functions.clear.description"></a><h6>
|
||||
<a name="id580001"></a>
|
||||
<a name="id1139004"></a>
|
||||
<a href="clear.html#fusion.algorithms.transformation.functions.clear.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
<a href="clear.html" title="clear"><tt class="computeroutput"><span class="identifier">clear</span></tt></a> returns an empty sequence.
|
||||
<a href="clear.html" title="clear"><code class="computeroutput"><span class="identifier">clear</span></code></a> returns an empty sequence.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.clear.synposis"></a><h6>
|
||||
<a name="id580049"></a>
|
||||
<a name="id1139046"></a>
|
||||
<a href="clear.html#fusion.algorithms.transformation.functions.clear.synposis">Synposis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">template</span><span class="special"><</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">Sequence</span>
|
||||
<span class="special">></span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/clear.html" title="clear"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">clear</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">clear</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">seq</span><span class="special">);</span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/clear.html" title="clear"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">clear</span></code></a><span class="special"><</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">clear</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">seq</span><span class="special">);</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id580205"></a><p class="title"><b>Table 1.61. Parameters</b></p>
|
||||
<a name="id1139184"></a><p class="title"><b>Table 1.61. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -56,7 +56,7 @@
|
||||
<th>Description</th>
|
||||
</tr></thead>
|
||||
<tbody><tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">seq</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">seq</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
@@ -67,42 +67,42 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.transformation.functions.clear.expression_semantics"></a><h6>
|
||||
<a name="id580281"></a>
|
||||
<a name="id1139251"></a>
|
||||
<a href="clear.html#fusion.algorithms.transformation.functions.clear.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="clear.html" title="clear"><tt class="computeroutput"><span class="identifier">clear</span></tt></a><span class="special">(</span><span class="identifier">seq</span><span class="special">);</span>
|
||||
<a href="clear.html" title="clear"><code class="computeroutput"><span class="identifier">clear</span></code></a><span class="special">(</span><span class="identifier">seq</span><span class="special">);</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
<span class="bold"><strong>Return type</strong></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Expression Semantics</b></span>: Returns a sequence
|
||||
<span class="bold"><strong>Expression Semantics</strong></span>: Returns a sequence
|
||||
with no elements.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.clear.complexity"></a><h6>
|
||||
<a name="id580377"></a>
|
||||
<a name="id1139335"></a>
|
||||
<a href="clear.html#fusion.algorithms.transformation.functions.clear.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Constant.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.clear.header"></a><h6>
|
||||
<a name="id580408"></a>
|
||||
<a name="id1139363"></a>
|
||||
<a href="clear.html#fusion.algorithms.transformation.functions.clear.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</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">transformation</span><span class="special">/</span><span class="identifier">clear</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.algorithms.transformation.functions.clear.example"></a><h6>
|
||||
<a name="id580514"></a>
|
||||
<a name="id1139456"></a>
|
||||
<a href="clear.html#fusion.algorithms.transformation.functions.clear.example">Example</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="clear.html" title="clear"><tt class="computeroutput"><span class="identifier">clear</span></tt></a><span class="special">(</span><a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><tt class="computeroutput"><span class="identifier">make_vector</span></tt></a><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="special">==</span> <a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><tt class="computeroutput"><span class="identifier">make_vector</span></tt></a><span class="special">());</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="clear.html" title="clear"><code class="computeroutput"><span class="identifier">clear</span></code></a><span class="special">(</span><a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><code class="computeroutput"><span class="identifier">make_vector</span></code></a><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="special">==</span> <a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><code class="computeroutput"><span class="identifier">make_vector</span></code></a><span class="special">());</span>
|
||||
</pre>
|
||||
</div>
|
||||
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>erase</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../functions.html" title="Functions">
|
||||
<link rel="prev" href="clear.html" title="clear">
|
||||
@@ -26,7 +26,7 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.transformation.functions.erase"></a><a href="erase.html" title="erase">erase</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.transformation.functions.erase.description"></a><h6>
|
||||
<a name="id580678"></a>
|
||||
<a name="id1139602"></a>
|
||||
<a href="erase.html#fusion.algorithms.transformation.functions.erase.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
@@ -34,7 +34,7 @@
|
||||
those at a specified iterator, or between two iterators.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.erase.synposis"></a><h6>
|
||||
<a name="id580712"></a>
|
||||
<a name="id1139632"></a>
|
||||
<a href="erase.html#fusion.algorithms.transformation.functions.erase.synposis">Synposis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -42,7 +42,7 @@
|
||||
<span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">First</span>
|
||||
<span class="special">></span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/erase.html" title="erase"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">erase</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">First</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">erase</span><span class="special">(</span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/erase.html" title="erase"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">erase</span></code></a><span class="special"><</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">First</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">erase</span><span class="special">(</span>
|
||||
<span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">seq</span><span class="special">,</span> <span class="identifier">First</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">it1</span><span class="special">);</span>
|
||||
|
||||
<span class="keyword">template</span><span class="special"><</span>
|
||||
@@ -50,11 +50,11 @@
|
||||
<span class="keyword">typename</span> <span class="identifier">First</span><span class="special">,</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">Last</span>
|
||||
<span class="special">></span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/erase.html" title="erase"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">erase</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">First</span><span class="special">,</span> <span class="identifier">Last</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">erase</span><span class="special">(</span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/erase.html" title="erase"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">erase</span></code></a><span class="special"><</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">First</span><span class="special">,</span> <span class="identifier">Last</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">erase</span><span class="special">(</span>
|
||||
<span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">seq</span><span class="special">,</span> <span class="identifier">First</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">it1</span><span class="special">,</span> <span class="identifier">Last</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">it2</span><span class="special">);</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id581173"></a><p class="title"><b>Table 1.62. Parameters</b></p>
|
||||
<a name="id1140038"></a><p class="title"><b>Table 1.62. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -68,7 +68,7 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">seq</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">seq</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
@@ -77,82 +77,82 @@
|
||||
<td>Operation's argument</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">it1</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">it1</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../iterators/concepts/forward_iterator.html" title="Forward
|
||||
Iterator">Forward
|
||||
Iterator</a>
|
||||
</td>
|
||||
<td>Iterator into <tt class="computeroutput"><span class="identifier">seq</span></tt>
|
||||
<td>Iterator into <code class="computeroutput"><span class="identifier">seq</span></code>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">it2</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">it2</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../iterators/concepts/forward_iterator.html" title="Forward
|
||||
Iterator">Forward
|
||||
Iterator</a>
|
||||
</td>
|
||||
<td>Iterator into <tt class="computeroutput"><span class="identifier">seq</span></tt>
|
||||
after <tt class="computeroutput"><span class="identifier">it1</span></tt>
|
||||
<td>Iterator into <code class="computeroutput"><span class="identifier">seq</span></code>
|
||||
after <code class="computeroutput"><span class="identifier">it1</span></code>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.transformation.functions.erase.expression_semantics"></a><h6>
|
||||
<a name="id581331"></a>
|
||||
<a name="id1140179"></a>
|
||||
<a href="erase.html#fusion.algorithms.transformation.functions.erase.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="erase.html" title="erase"><tt class="computeroutput"><span class="identifier">erase</span></tt></a><span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">pos</span><span class="special">);</span>
|
||||
<a href="erase.html" title="erase"><code class="computeroutput"><span class="identifier">erase</span></code></a><span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">pos</span><span class="special">);</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
<span class="bold"><strong>Return type</strong></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns a new sequence, containing
|
||||
all the elements of <tt class="computeroutput"><span class="identifier">seq</span></tt>
|
||||
except the element at <tt class="computeroutput"><span class="identifier">pos</span></tt>.
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns a new sequence, containing
|
||||
all the elements of <code class="computeroutput"><span class="identifier">seq</span></code>
|
||||
except the element at <code class="computeroutput"><span class="identifier">pos</span></code>.
|
||||
</p>
|
||||
<pre class="programlisting">
|
||||
<a href="erase.html" title="erase"><tt class="computeroutput"><span class="identifier">erase</span></tt></a><span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">first</span><span class="special">,</span> <span class="identifier">last</span><span class="special">);</span>
|
||||
<a href="erase.html" title="erase"><code class="computeroutput"><span class="identifier">erase</span></code></a><span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">first</span><span class="special">,</span> <span class="identifier">last</span><span class="special">);</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
<span class="bold"><strong>Return type</strong></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns a new sequence, with
|
||||
all the elements of <tt class="computeroutput"><span class="identifier">seq</span></tt>,
|
||||
in their original order, except those in the range [<tt class="computeroutput"><span class="identifier">first</span></tt>,<tt class="computeroutput"><span class="identifier">last</span></tt>).
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns a new sequence, with
|
||||
all the elements of <code class="computeroutput"><span class="identifier">seq</span></code>,
|
||||
in their original order, except those in the range [<code class="computeroutput"><span class="identifier">first</span></code>,<code class="computeroutput"><span class="identifier">last</span></code>).
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.erase.complexity"></a><h6>
|
||||
<a name="id581580"></a>
|
||||
<a name="id1140399"></a>
|
||||
<a href="erase.html#fusion.algorithms.transformation.functions.erase.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Constant. Returns a view which is lazily evaluated.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.erase.header"></a><h6>
|
||||
<a name="id581612"></a>
|
||||
<a name="id1140428"></a>
|
||||
<a href="erase.html#fusion.algorithms.transformation.functions.erase.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</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">transformation</span><span class="special">/</span><span class="identifier">erase</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.algorithms.transformation.functions.erase.example"></a><h6>
|
||||
<a name="id581718"></a>
|
||||
<a name="id1140521"></a>
|
||||
<a href="erase.html#fusion.algorithms.transformation.functions.erase.example">Example</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">const</span> <a href="../../../sequences/containers/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special"><</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">double</span><span class="special">,</span> <span class="keyword">char</span><span class="special">></span> <span class="identifier">vec</span><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="number">2.0</span><span class="special">,</span> <span class="char">'c'</span><span class="special">);</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="erase.html" title="erase"><tt class="computeroutput"><span class="identifier">erase</span></tt></a><span class="special">(</span><span class="identifier">vec</span><span class="special">,</span> <a href="../../../iterators/functions/next.html" title="next"><tt class="computeroutput"><span class="identifier">next</span></tt></a><span class="special">(</span><a href="../../../sequences/intrinsics/functions/begin.html" title="begin"><tt class="computeroutput"><span class="identifier">begin</span></tt></a><span class="special">(</span><span class="identifier">vec</span><span class="special">)))</span> <span class="special">==</span> <a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><tt class="computeroutput"><span class="identifier">make_vector</span></tt></a><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="char">'c'</span><span class="special">));</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="erase.html" title="erase"><tt class="computeroutput"><span class="identifier">erase</span></tt></a><span class="special">(</span><span class="identifier">vec</span><span class="special">,</span> <a href="../../../iterators/functions/next.html" title="next"><tt class="computeroutput"><span class="identifier">next</span></tt></a><span class="special">(</span><a href="../../../sequences/intrinsics/functions/begin.html" title="begin"><tt class="computeroutput"><span class="identifier">begin</span></tt></a><span class="special">(</span><span class="identifier">vec</span><span class="special">)),</span> <a href="../../../sequences/intrinsics/functions/end.html" title="end"><tt class="computeroutput"><span class="identifier">end</span></tt></a><span class="special">(</span><span class="identifier">vec</span><span class="special">))</span> <span class="special">==</span> <a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><tt class="computeroutput"><span class="identifier">make_vector</span></tt></a><span class="special">(</span><span class="number">1</span><span class="special">));</span>
|
||||
<span class="keyword">const</span> <a href="../../../sequences/containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special"><</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">double</span><span class="special">,</span> <span class="keyword">char</span><span class="special">></span> <span class="identifier">vec</span><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="number">2.0</span><span class="special">,</span> <span class="char">'c'</span><span class="special">);</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="erase.html" title="erase"><code class="computeroutput"><span class="identifier">erase</span></code></a><span class="special">(</span><span class="identifier">vec</span><span class="special">,</span> <a href="../../../iterators/functions/next.html" title="next"><code class="computeroutput"><span class="identifier">next</span></code></a><span class="special">(</span><a href="../../../sequences/intrinsics/functions/begin.html" title="begin"><code class="computeroutput"><span class="identifier">begin</span></code></a><span class="special">(</span><span class="identifier">vec</span><span class="special">)))</span> <span class="special">==</span> <a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><code class="computeroutput"><span class="identifier">make_vector</span></code></a><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="char">'c'</span><span class="special">));</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="erase.html" title="erase"><code class="computeroutput"><span class="identifier">erase</span></code></a><span class="special">(</span><span class="identifier">vec</span><span class="special">,</span> <a href="../../../iterators/functions/next.html" title="next"><code class="computeroutput"><span class="identifier">next</span></code></a><span class="special">(</span><a href="../../../sequences/intrinsics/functions/begin.html" title="begin"><code class="computeroutput"><span class="identifier">begin</span></code></a><span class="special">(</span><span class="identifier">vec</span><span class="special">)),</span> <a href="../../../sequences/intrinsics/functions/end.html" title="end"><code class="computeroutput"><span class="identifier">end</span></code></a><span class="special">(</span><span class="identifier">vec</span><span class="special">))</span> <span class="special">==</span> <a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><code class="computeroutput"><span class="identifier">make_vector</span></code></a><span class="special">(</span><span class="number">1</span><span class="special">));</span>
|
||||
</pre>
|
||||
</div>
|
||||
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>erase_key</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../functions.html" title="Functions">
|
||||
<link rel="prev" href="erase.html" title="erase">
|
||||
@@ -26,20 +26,20 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.transformation.functions.erase_key"></a><a href="erase_key.html" title="erase_key">erase_key</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.transformation.functions.erase_key.description"></a><h6>
|
||||
<a name="id582175"></a>
|
||||
<a name="id1140925"></a>
|
||||
<a href="erase_key.html#fusion.algorithms.transformation.functions.erase_key.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
For an <a href="../../../sequences/concepts/associative_sequence.html" title="Associative
|
||||
Sequence">Associative
|
||||
Sequence</a> <tt class="computeroutput"><span class="identifier">seq</span></tt>,
|
||||
Sequence</a> <code class="computeroutput"><span class="identifier">seq</span></code>,
|
||||
returns a <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a> containing all the elements of the original except those
|
||||
with a given key.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.erase_key.synposis"></a><h6>
|
||||
<a name="id582236"></a>
|
||||
<a name="id1140980"></a>
|
||||
<a href="erase_key.html#fusion.algorithms.transformation.functions.erase_key.synposis">Synposis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -50,7 +50,7 @@
|
||||
<span class="keyword">typename</span> <span class="identifier">result_of</span><span class="special">::</span><span class="identifier">erase_key</span><span class="special"><</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">Key</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">erase_key</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">seq</span><span class="special">);</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id582408"></a><p class="title"><b>Table 1.63. Parameters</b></p>
|
||||
<a name="id1141130"></a><p class="title"><b>Table 1.63. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -64,7 +64,7 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">seq</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">seq</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/associative_sequence.html" title="Associative
|
||||
Sequence">Associative
|
||||
@@ -73,7 +73,7 @@
|
||||
<td>Operation's argument</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">Key</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">Key</span></code></td>
|
||||
<td>Any
|
||||
type</td>
|
||||
<td>Key to erase</td>
|
||||
@@ -82,43 +82,43 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.transformation.functions.erase_key.expression_semantics"></a><h6>
|
||||
<a name="id582505"></a>
|
||||
<a name="id1141215"></a>
|
||||
<a href="erase_key.html#fusion.algorithms.transformation.functions.erase_key.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="erase_key.html" title="erase_key"><tt class="computeroutput"><span class="identifier">erase_key</span></tt></a><span class="special"><</span><span class="identifier">Key</span><span class="special">>(</span><span class="identifier">seq</span><span class="special">);</span>
|
||||
<a href="erase_key.html" title="erase_key"><code class="computeroutput"><span class="identifier">erase_key</span></code></a><span class="special"><</span><span class="identifier">Key</span><span class="special">>(</span><span class="identifier">seq</span><span class="special">);</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
<span class="bold"><strong>Return type</strong></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns a new sequence, containing
|
||||
all the elements of <tt class="computeroutput"><span class="identifier">seq</span></tt>,
|
||||
except those with key <tt class="computeroutput"><span class="identifier">Key</span></tt>.
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns a new sequence, containing
|
||||
all the elements of <code class="computeroutput"><span class="identifier">seq</span></code>,
|
||||
except those with key <code class="computeroutput"><span class="identifier">Key</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.erase_key.complexity"></a><h6>
|
||||
<a name="id582631"></a>
|
||||
<a name="id1141327"></a>
|
||||
<a href="erase_key.html#fusion.algorithms.transformation.functions.erase_key.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Constant. Returns a view which is lazily evaluated.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.erase_key.header"></a><h6>
|
||||
<a name="id582662"></a>
|
||||
<a name="id1141355"></a>
|
||||
<a href="erase_key.html#fusion.algorithms.transformation.functions.erase_key.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</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">transformation</span><span class="special">/</span><span class="identifier">erase_key</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.algorithms.transformation.functions.erase_key.example"></a><h6>
|
||||
<a name="id582769"></a>
|
||||
<a name="id1141449"></a>
|
||||
<a href="erase_key.html#fusion.algorithms.transformation.functions.erase_key.example">Example</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="erase_key.html" title="erase_key"><tt class="computeroutput"><span class="identifier">erase_key</span></tt></a><span class="special"><</span><span class="keyword">int</span><span class="special">>(</span><a href="../../../sequences/generation/functions/make_map.html" title="make_map"><tt class="computeroutput"><span class="identifier">make_map</span></tt></a><span class="special"><</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">long</span><span class="special">>(</span><span class="char">'a'</span><span class="special">,</span> <span class="char">'b'</span><span class="special">))</span> <span class="special">==</span> <a href="../../../sequences/generation/functions/make_map.html" title="make_map"><tt class="computeroutput"><span class="identifier">make_map</span></tt></a><span class="special"><</span><span class="keyword">long</span><span class="special">>(</span><span class="char">'b'</span><span class="special">));</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="erase_key.html" title="erase_key"><code class="computeroutput"><span class="identifier">erase_key</span></code></a><span class="special"><</span><span class="keyword">int</span><span class="special">>(</span><a href="../../../sequences/generation/functions/make_map.html" title="make_map"><code class="computeroutput"><span class="identifier">make_map</span></code></a><span class="special"><</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">long</span><span class="special">>(</span><span class="char">'a'</span><span class="special">,</span> <span class="char">'b'</span><span class="special">))</span> <span class="special">==</span> <a href="../../../sequences/generation/functions/make_map.html" title="make_map"><code class="computeroutput"><span class="identifier">make_map</span></code></a><span class="special"><</span><span class="keyword">long</span><span class="special">>(</span><span class="char">'b'</span><span class="special">));</span>
|
||||
</pre>
|
||||
</div>
|
||||
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>filter</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../functions.html" title="Functions">
|
||||
<link rel="prev" href="../functions.html" title="Functions">
|
||||
@@ -26,7 +26,7 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.transformation.functions.filter"></a><a href="filter.html" title="filter">filter</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.transformation.functions.filter.description"></a><h6>
|
||||
<a name="id571789"></a>
|
||||
<a name="id1114252"></a>
|
||||
<a href="filter.html#fusion.algorithms.transformation.functions.filter.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
@@ -34,7 +34,7 @@
|
||||
the elements of a specified type.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.filter.synopsis"></a><h6>
|
||||
<a name="id571823"></a>
|
||||
<a name="id1114282"></a>
|
||||
<a href="filter.html#fusion.algorithms.transformation.functions.filter.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -42,10 +42,10 @@
|
||||
<span class="keyword">typename</span> <span class="identifier">T</span><span class="special">,</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">Sequence</span>
|
||||
<span class="special">></span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/filter.html" title="filter"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">filter</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">T</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">filter</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">seq</span><span class="special">);</span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/filter.html" title="filter"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">filter</span></code></a><span class="special"><</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">T</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">filter</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">seq</span><span class="special">);</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id572007"></a><p class="title"><b>Table 1.52. Parameters</b></p>
|
||||
<a name="id1114444"></a><p class="title"><b>Table 1.52. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -59,7 +59,7 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">seq</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">seq</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
@@ -68,7 +68,7 @@
|
||||
<td>Operation's argument</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">T</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">T</span></code></td>
|
||||
<td>Any
|
||||
type</td>
|
||||
<td>The type to retain</td>
|
||||
@@ -77,45 +77,45 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.transformation.functions.filter.expression_semantics"></a><h6>
|
||||
<a name="id572101"></a>
|
||||
<a name="id1114529"></a>
|
||||
<a href="filter.html#fusion.algorithms.transformation.functions.filter.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="filter.html" title="filter"><tt class="computeroutput"><span class="identifier">filter</span></tt></a><span class="special"><</span><span class="identifier">T</span><span class="special">>(</span><span class="identifier">seq</span><span class="special">);</span>
|
||||
<a href="filter.html" title="filter"><code class="computeroutput"><span class="identifier">filter</span></code></a><span class="special"><</span><span class="identifier">T</span><span class="special">>(</span><span class="identifier">seq</span><span class="special">);</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
<span class="bold"><strong>Return type</strong></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns a sequence containing
|
||||
all the elements of <tt class="computeroutput"><span class="identifier">seq</span></tt>
|
||||
of type <tt class="computeroutput"><span class="identifier">T</span></tt>. Equivalent
|
||||
to <tt class="computeroutput"><a href="filter_if.html" title="filter_if"><tt class="computeroutput"><span class="identifier">filter_if</span></tt></a><span class="special"><</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">same_type</span><span class="special"><</span><span class="identifier">_</span><span class="special">,</span> <span class="identifier">T</span><span class="special">></span> <span class="special">>(</span><span class="identifier">seq</span><span class="special">)</span></tt>.
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns a sequence containing
|
||||
all the elements of <code class="computeroutput"><span class="identifier">seq</span></code>
|
||||
of type <code class="computeroutput"><span class="identifier">T</span></code>. Equivalent
|
||||
to <code class="computeroutput"><a href="filter_if.html" title="filter_if"><code class="computeroutput"><span class="identifier">filter_if</span></code></a><span class="special"><</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">same_type</span><span class="special"><</span><span class="identifier">_</span><span class="special">,</span> <span class="identifier">T</span><span class="special">></span> <span class="special">>(</span><span class="identifier">seq</span><span class="special">)</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.filter.complexity"></a><h6>
|
||||
<a name="id572310"></a>
|
||||
<a name="id1114713"></a>
|
||||
<a href="filter.html#fusion.algorithms.transformation.functions.filter.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Constant. Returns a view which is lazily evaluated.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.filter.header"></a><h6>
|
||||
<a name="id572342"></a>
|
||||
<a name="id1114742"></a>
|
||||
<a href="filter.html#fusion.algorithms.transformation.functions.filter.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</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">transformation</span><span class="special">/</span><span class="identifier">filter</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.algorithms.transformation.functions.filter.example"></a><h6>
|
||||
<a name="id572448"></a>
|
||||
<a name="id1114835"></a>
|
||||
<a href="filter.html#fusion.algorithms.transformation.functions.filter.example">Example</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">const</span> <a href="../../../sequences/containers/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special"><</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">long</span><span class="special">,</span><span class="keyword">long</span><span class="special">></span> <span class="identifier">vec</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="number">4</span><span class="special">);</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="filter.html" title="filter"><tt class="computeroutput"><span class="identifier">filter</span></tt></a><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> <a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><tt class="computeroutput"><span class="identifier">make_vector</span></tt></a><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">));</span>
|
||||
<span class="keyword">const</span> <a href="../../../sequences/containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special"><</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">long</span><span class="special">,</span><span class="keyword">long</span><span class="special">></span> <span class="identifier">vec</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="number">4</span><span class="special">);</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="filter.html" title="filter"><code class="computeroutput"><span class="identifier">filter</span></code></a><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> <a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><code class="computeroutput"><span class="identifier">make_vector</span></code></a><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">));</span>
|
||||
</pre>
|
||||
</div>
|
||||
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>filter_if</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../functions.html" title="Functions">
|
||||
<link rel="prev" href="filter.html" title="filter">
|
||||
@@ -26,16 +26,16 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.transformation.functions.filter_if"></a><a href="filter_if.html" title="filter_if">filter_if</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.transformation.functions.filter_if.description"></a><h6>
|
||||
<a name="id572718"></a>
|
||||
<a name="id1115075"></a>
|
||||
<a href="filter_if.html#fusion.algorithms.transformation.functions.filter_if.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
For a given sequence, <a href="filter_if.html" title="filter_if"><tt class="computeroutput"><span class="identifier">filter_if</span></tt></a> returns a new sequences
|
||||
containing only the elements with types for which a given MPL Lambda
|
||||
Expression evaluates to <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">true_</span></tt>.
|
||||
For a given sequence, <a href="filter_if.html" title="filter_if"><code class="computeroutput"><span class="identifier">filter_if</span></code></a> returns a new sequences
|
||||
containing only the elements with types for which a given <a href="http://www.boost.org/libs/mpl/doc/refmanual/lambda-expression.html" target="_top">MPL
|
||||
Lambda Expression</a> evaluates to <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">true_</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.filter_if.synopsis"></a><h6>
|
||||
<a name="id572799"></a>
|
||||
<a name="id1115153"></a>
|
||||
<a href="filter_if.html#fusion.algorithms.transformation.functions.filter_if.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -43,10 +43,10 @@
|
||||
<span class="keyword">typename</span> <span class="identifier">Pred</span><span class="special">,</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">Sequence</span>
|
||||
<span class="special">></span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/filter_if.html" title="filter_if"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">filter_if</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">Pred</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">filter_if</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">seq</span><span class="special">);</span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/filter_if.html" title="filter_if"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">filter_if</span></code></a><span class="special"><</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">Pred</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">filter_if</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">seq</span><span class="special">);</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id572984"></a><p class="title"><b>Table 1.53. Parameters</b></p>
|
||||
<a name="id1115315"></a><p class="title"><b>Table 1.53. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -60,7 +60,7 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">seq</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">seq</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
@@ -69,56 +69,57 @@
|
||||
<td>Operation's argument</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">Pred</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">Pred</span></code></td>
|
||||
<td>A
|
||||
unary MPL Lambda Expression</td>
|
||||
<td>The predicate to filter
|
||||
by</td>
|
||||
unary <a href="http://www.boost.org/libs/mpl/doc/refmanual/lambda-expression.html" target="_top">MPL
|
||||
Lambda Expression</a>
|
||||
</td>
|
||||
<td>The predicate to filter by</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.transformation.functions.filter_if.expression_semantics"></a><h6>
|
||||
<a name="id573082"></a>
|
||||
<a name="id1115407"></a>
|
||||
<a href="filter_if.html#fusion.algorithms.transformation.functions.filter_if.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="filter_if.html" title="filter_if"><tt class="computeroutput"><span class="identifier">filter_if</span></tt></a><span class="special"><</span><span class="identifier">Pred</span><span class="special">>(</span><span class="identifier">seq</span><span class="special">);</span>
|
||||
<a href="filter_if.html" title="filter_if"><code class="computeroutput"><span class="identifier">filter_if</span></code></a><span class="special"><</span><span class="identifier">Pred</span><span class="special">>(</span><span class="identifier">seq</span><span class="special">);</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
<span class="bold"><strong>Return type</strong></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns a sequence containing
|
||||
all the elements of <tt class="computeroutput"><span class="identifier">seq</span></tt>
|
||||
with types for which <tt class="computeroutput"><span class="identifier">Pred</span></tt>
|
||||
evaluates to <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">true_</span></tt>. The order of the retained elements
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns a sequence containing
|
||||
all the elements of <code class="computeroutput"><span class="identifier">seq</span></code>
|
||||
with types for which <code class="computeroutput"><span class="identifier">Pred</span></code>
|
||||
evaluates to <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">true_</span></code>. The order of the retained elements
|
||||
is the same as in the original sequence.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.filter_if.complexity"></a><h6>
|
||||
<a name="id573240"></a>
|
||||
<a name="id1115547"></a>
|
||||
<a href="filter_if.html#fusion.algorithms.transformation.functions.filter_if.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Constant. Returns a view which is lazily evaluated.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.filter_if.header"></a><h6>
|
||||
<a name="id573271"></a>
|
||||
<a name="id1115576"></a>
|
||||
<a href="filter_if.html#fusion.algorithms.transformation.functions.filter_if.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</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">transformation</span><span class="special">/</span><span class="identifier">filter_if</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.algorithms.transformation.functions.filter_if.example"></a><h6>
|
||||
<a name="id573378"></a>
|
||||
<a name="id1115669"></a>
|
||||
<a href="filter_if.html#fusion.algorithms.transformation.functions.filter_if.example">Example</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">const</span> <a href="../../../sequences/containers/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special"><</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">double</span><span class="special">,</span><span class="keyword">double</span><span class="special">></span> <span class="identifier">vec</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.0</span><span class="special">,</span><span class="number">4.0</span><span class="special">);</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="filter_if.html" title="filter_if"><tt class="computeroutput"><span class="identifier">filter_if</span></tt></a><span class="special"><</span><span class="identifier">is_integral</span><span class="special"><</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">_</span><span class="special">></span> <span class="special">>(</span><span class="identifier">vec</span><span class="special">)</span> <span class="special">==</span> <a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><tt class="computeroutput"><span class="identifier">make_vector</span></tt></a><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">));</span>
|
||||
<span class="keyword">const</span> <a href="../../../sequences/containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special"><</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">double</span><span class="special">,</span><span class="keyword">double</span><span class="special">></span> <span class="identifier">vec</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.0</span><span class="special">,</span><span class="number">4.0</span><span class="special">);</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="filter_if.html" title="filter_if"><code class="computeroutput"><span class="identifier">filter_if</span></code></a><span class="special"><</span><span class="identifier">is_integral</span><span class="special"><</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">_</span><span class="special">></span> <span class="special">>(</span><span class="identifier">vec</span><span class="special">)</span> <span class="special">==</span> <a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><code class="computeroutput"><span class="identifier">make_vector</span></code></a><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">));</span>
|
||||
</pre>
|
||||
</div>
|
||||
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>insert</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../functions.html" title="Functions">
|
||||
<link rel="prev" href="erase_key.html" title="erase_key">
|
||||
@@ -26,7 +26,7 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.transformation.functions.insert"></a><a href="insert.html" title="insert">insert</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.transformation.functions.insert.description"></a><h6>
|
||||
<a name="id582974"></a>
|
||||
<a name="id1141632"></a>
|
||||
<a href="insert.html#fusion.algorithms.transformation.functions.insert.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
@@ -34,7 +34,7 @@
|
||||
element inserted the position described by a given iterator.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.insert.synposis"></a><h6>
|
||||
<a name="id583008"></a>
|
||||
<a name="id1141662"></a>
|
||||
<a href="insert.html#fusion.algorithms.transformation.functions.insert.synposis">Synposis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -46,7 +46,7 @@
|
||||
<span class="emphasis"><em>unspecified</em></span> <span class="identifier">insert</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">seq</span><span class="special">,</span> <span class="identifier">Pos</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">pos</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">t</span><span class="special">);</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id583198"></a><p class="title"><b>Table 1.64. Parameters</b></p>
|
||||
<a name="id1141828"></a><p class="title"><b>Table 1.64. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -60,7 +60,7 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">seq</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">seq</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
@@ -69,7 +69,7 @@
|
||||
<td>Operation's argument</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">pos</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">pos</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../iterators/concepts/forward_iterator.html" title="Forward
|
||||
Iterator">Forward
|
||||
@@ -78,7 +78,7 @@
|
||||
<td>The position to insert at</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">t</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">t</span></code></td>
|
||||
<td>Any
|
||||
type</td>
|
||||
<td>The value to insert</td>
|
||||
@@ -87,46 +87,46 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.transformation.functions.insert.expression_semantics"></a><h6>
|
||||
<a name="id583322"></a>
|
||||
<a name="id1141938"></a>
|
||||
<a href="insert.html#fusion.algorithms.transformation.functions.insert.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="insert.html" title="insert"><tt class="computeroutput"><span class="identifier">insert</span></tt></a><span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">p</span><span class="special">,</span> <span class="identifier">t</span><span class="special">);</span>
|
||||
<a href="insert.html" title="insert"><code class="computeroutput"><span class="identifier">insert</span></code></a><span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">p</span><span class="special">,</span> <span class="identifier">t</span><span class="special">);</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
<span class="bold"><strong>Return type</strong></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns a new sequence, containing
|
||||
all the elements of <tt class="computeroutput"><span class="identifier">seq</span></tt>,
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns a new sequence, containing
|
||||
all the elements of <code class="computeroutput"><span class="identifier">seq</span></code>,
|
||||
in their original order, and a new element with the type and value of
|
||||
<tt class="computeroutput"><span class="identifier">t</span></tt> inserted at iterator
|
||||
<tt class="computeroutput"><span class="identifier">pos</span></tt>.
|
||||
<code class="computeroutput"><span class="identifier">t</span></code> inserted at iterator
|
||||
<code class="computeroutput"><span class="identifier">pos</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.insert.complexity"></a><h6>
|
||||
<a name="id583472"></a>
|
||||
<a name="id1142070"></a>
|
||||
<a href="insert.html#fusion.algorithms.transformation.functions.insert.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Constant. Returns a view which is lazily evaluated.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.insert.header"></a><h6>
|
||||
<a name="id583504"></a>
|
||||
<a name="id1142099"></a>
|
||||
<a href="insert.html#fusion.algorithms.transformation.functions.insert.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</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">transformation</span><span class="special">/</span><span class="identifier">insert</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.algorithms.transformation.functions.insert.example"></a><h6>
|
||||
<a name="id583610"></a>
|
||||
<a name="id1142192"></a>
|
||||
<a href="insert.html#fusion.algorithms.transformation.functions.insert.example">Example</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">const</span> <a href="../../../sequences/containers/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special"><</span><span class="keyword">int</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="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">);</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="insert.html" title="insert"><tt class="computeroutput"><span class="identifier">insert</span></tt></a><span class="special">(</span><span class="identifier">vec</span><span class="special">,</span> <a href="../../../iterators/functions/next.html" title="next"><tt class="computeroutput"><span class="identifier">next</span></tt></a><span class="special">(</span><a href="../../../sequences/intrinsics/functions/begin.html" title="begin"><tt class="computeroutput"><span class="identifier">begin</span></tt></a><span class="special">(</span><span class="identifier">vec</span><span class="special">)),</span> <span class="number">3</span><span class="special">)</span> <span class="special">==</span> <a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><tt class="computeroutput"><span class="identifier">make_vector</span></tt></a><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">3</span><span class="special">,</span><span class="number">2</span><span class="special">));</span>
|
||||
<span class="keyword">const</span> <a href="../../../sequences/containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special"><</span><span class="keyword">int</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="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">);</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="insert.html" title="insert"><code class="computeroutput"><span class="identifier">insert</span></code></a><span class="special">(</span><span class="identifier">vec</span><span class="special">,</span> <a href="../../../iterators/functions/next.html" title="next"><code class="computeroutput"><span class="identifier">next</span></code></a><span class="special">(</span><a href="../../../sequences/intrinsics/functions/begin.html" title="begin"><code class="computeroutput"><span class="identifier">begin</span></code></a><span class="special">(</span><span class="identifier">vec</span><span class="special">)),</span> <span class="number">3</span><span class="special">)</span> <span class="special">==</span> <a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><code class="computeroutput"><span class="identifier">make_vector</span></code></a><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">3</span><span class="special">,</span><span class="number">2</span><span class="special">));</span>
|
||||
</pre>
|
||||
</div>
|
||||
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>insert_range</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../functions.html" title="Functions">
|
||||
<link rel="prev" href="insert.html" title="insert">
|
||||
@@ -26,7 +26,7 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.transformation.functions.insert_range"></a><a href="insert_range.html" title="insert_range">insert_range</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.transformation.functions.insert_range.description"></a><h6>
|
||||
<a name="id583904"></a>
|
||||
<a name="id1142452"></a>
|
||||
<a href="insert_range.html#fusion.algorithms.transformation.functions.insert_range.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
@@ -34,7 +34,7 @@
|
||||
iterator.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.insert_range.synposis"></a><h6>
|
||||
<a name="id583938"></a>
|
||||
<a name="id1142483"></a>
|
||||
<a href="insert_range.html#fusion.algorithms.transformation.functions.insert_range.synposis">Synposis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -43,11 +43,11 @@
|
||||
<span class="keyword">typename</span> <span class="identifier">Pos</span><span class="special">,</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">Range</span>
|
||||
<span class="special">></span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/insert_range.html" title="insert_range"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">insert_range</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">Pos</span><span class="special">,</span> <span class="identifier">Range</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">insert_range</span><span class="special">(</span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/insert_range.html" title="insert_range"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">insert_range</span></code></a><span class="special"><</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">Pos</span><span class="special">,</span> <span class="identifier">Range</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">insert_range</span><span class="special">(</span>
|
||||
<span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">seq</span><span class="special">,</span> <span class="identifier">Pos</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">pos</span><span class="special">,</span> <span class="identifier">Range</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">range</span><span class="special">);</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id584210"></a><p class="title"><b>Table 1.65. Parameters</b></p>
|
||||
<a name="id1142722"></a><p class="title"><b>Table 1.65. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -61,7 +61,7 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">seq</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">seq</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
@@ -70,7 +70,7 @@
|
||||
<td>Operation's argument</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">pos</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">pos</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../iterators/concepts/forward_iterator.html" title="Forward
|
||||
Iterator">Forward
|
||||
@@ -79,7 +79,7 @@
|
||||
<td>The position to insert at</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">range</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">range</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
@@ -91,46 +91,46 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.transformation.functions.insert_range.expression_semantics"></a><h6>
|
||||
<a name="id584342"></a>
|
||||
<a name="id1142840"></a>
|
||||
<a href="insert_range.html#fusion.algorithms.transformation.functions.insert_range.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="insert.html" title="insert"><tt class="computeroutput"><span class="identifier">insert</span></tt></a><span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">pos</span><span class="special">,</span> <span class="identifier">range</span><span class="special">);</span>
|
||||
<a href="insert.html" title="insert"><code class="computeroutput"><span class="identifier">insert</span></code></a><span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">pos</span><span class="special">,</span> <span class="identifier">range</span><span class="special">);</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
<span class="bold"><strong>Return type</strong></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns a new sequence, containing
|
||||
all the elements of <tt class="computeroutput"><span class="identifier">seq</span></tt>,
|
||||
and the elements of <tt class="computeroutput"><span class="identifier">range</span></tt>
|
||||
inserted at iterator <tt class="computeroutput"><span class="identifier">pos</span></tt>.
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns a new sequence, containing
|
||||
all the elements of <code class="computeroutput"><span class="identifier">seq</span></code>,
|
||||
and the elements of <code class="computeroutput"><span class="identifier">range</span></code>
|
||||
inserted at iterator <code class="computeroutput"><span class="identifier">pos</span></code>.
|
||||
All elements retaining their ordering from the orignal sequences.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.insert_range.complexity"></a><h6>
|
||||
<a name="id584495"></a>
|
||||
<a name="id1142974"></a>
|
||||
<a href="insert_range.html#fusion.algorithms.transformation.functions.insert_range.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Constant. Returns a view which is lazily evaluated.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.insert_range.header"></a><h6>
|
||||
<a name="id584526"></a>
|
||||
<a name="id1143002"></a>
|
||||
<a href="insert_range.html#fusion.algorithms.transformation.functions.insert_range.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</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">transformation</span><span class="special">/</span><span class="identifier">insert_range</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.algorithms.transformation.functions.insert_range.example"></a><h6>
|
||||
<a name="id584632"></a>
|
||||
<a name="id1143096"></a>
|
||||
<a href="insert_range.html#fusion.algorithms.transformation.functions.insert_range.example">Example</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">const</span> <a href="../../../sequences/containers/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special"><</span><span class="keyword">int</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="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">);</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="insert_range.html" title="insert_range"><tt class="computeroutput"><span class="identifier">insert_range</span></tt></a><span class="special">(</span><span class="identifier">vec</span><span class="special">,</span> <a href="../../../iterators/functions/next.html" title="next"><tt class="computeroutput"><span class="identifier">next</span></tt></a><span class="special">(</span><a href="../../../sequences/intrinsics/functions/begin.html" title="begin"><tt class="computeroutput"><span class="identifier">begin</span></tt></a><span class="special">(</span><span class="identifier">vec</span><span class="special">)),</span> <a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><tt class="computeroutput"><span class="identifier">make_vector</span></tt></a><span class="special">(</span><span class="number">3</span><span class="special">,</span><span class="number">4</span><span class="special">))</span> <span class="special">==</span> <a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><tt class="computeroutput"><span class="identifier">make_vector</span></tt></a><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">3</span><span class="special">,</span><span class="number">4</span><span class="special">,</span><span class="number">2</span><span class="special">));</span>
|
||||
<span class="keyword">const</span> <a href="../../../sequences/containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special"><</span><span class="keyword">int</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="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">);</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="insert_range.html" title="insert_range"><code class="computeroutput"><span class="identifier">insert_range</span></code></a><span class="special">(</span><span class="identifier">vec</span><span class="special">,</span> <a href="../../../iterators/functions/next.html" title="next"><code class="computeroutput"><span class="identifier">next</span></code></a><span class="special">(</span><a href="../../../sequences/intrinsics/functions/begin.html" title="begin"><code class="computeroutput"><span class="identifier">begin</span></code></a><span class="special">(</span><span class="identifier">vec</span><span class="special">)),</span> <a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><code class="computeroutput"><span class="identifier">make_vector</span></code></a><span class="special">(</span><span class="number">3</span><span class="special">,</span><span class="number">4</span><span class="special">))</span> <span class="special">==</span> <a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><code class="computeroutput"><span class="identifier">make_vector</span></code></a><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">3</span><span class="special">,</span><span class="number">4</span><span class="special">,</span><span class="number">2</span><span class="special">));</span>
|
||||
</pre>
|
||||
</div>
|
||||
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>join</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../functions.html" title="Functions">
|
||||
<link rel="prev" href="insert_range.html" title="insert_range">
|
||||
@@ -26,7 +26,7 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.transformation.functions.join"></a><a href="join.html" title="join">join</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.transformation.functions.join.description"></a><h6>
|
||||
<a name="id584963"></a>
|
||||
<a name="id1143387"></a>
|
||||
<a href="join.html#fusion.algorithms.transformation.functions.join.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
@@ -34,17 +34,17 @@
|
||||
first followed by the elements of the second.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.join.synopsis"></a><h6>
|
||||
<a name="id584996"></a>
|
||||
<a name="id1143417"></a>
|
||||
<a href="join.html#fusion.algorithms.transformation.functions.join.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">template</span><span class="special"><</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">LhSequence</span><span class="special">,</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">RhSequence</span><span class="special">></span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/join.html" title="join"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">join</span></tt></a><span class="special"><</span><span class="identifier">LhSequence</span><span class="special">,</span> <span class="identifier">RhSequence</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">join</span><span class="special">(</span><span class="identifier">LhSequence</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">RhSequence</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">rhs</span><span class="special">);</span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/join.html" title="join"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">join</span></code></a><span class="special"><</span><span class="identifier">LhSequence</span><span class="special">,</span> <span class="identifier">RhSequence</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">join</span><span class="special">(</span><span class="identifier">LhSequence</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">RhSequence</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">rhs</span><span class="special">);</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id585204"></a><p class="title"><b>Table 1.66. Parameters</b></p>
|
||||
<a name="id1143598"></a><p class="title"><b>Table 1.66. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -58,7 +58,7 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">lhs</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">lhs</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
@@ -67,7 +67,7 @@
|
||||
<td>Operation's argument</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">rhs</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">rhs</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
@@ -79,46 +79,46 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.transformation.functions.join.expression_semantics"></a><h6>
|
||||
<a name="id585305"></a>
|
||||
<a name="id1143691"></a>
|
||||
<a href="join.html#fusion.algorithms.transformation.functions.join.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="join.html" title="join"><tt class="computeroutput"><span class="identifier">join</span></tt></a><span class="special">(</span><span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">rhs</span><span class="special">);</span>
|
||||
<a href="join.html" title="join"><code class="computeroutput"><span class="identifier">join</span></code></a><span class="special">(</span><span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">rhs</span><span class="special">);</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
<span class="bold"><strong>Return type</strong></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns a sequence containing
|
||||
all the elements of <tt class="computeroutput"><span class="identifier">lhs</span></tt>
|
||||
followed by all the elements of <tt class="computeroutput"><span class="identifier">rhs</span></tt>.
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns a sequence containing
|
||||
all the elements of <code class="computeroutput"><span class="identifier">lhs</span></code>
|
||||
followed by all the elements of <code class="computeroutput"><span class="identifier">rhs</span></code>.
|
||||
The order of th elements is preserved.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.join.complexity"></a><h6>
|
||||
<a name="id585432"></a>
|
||||
<a name="id1143803"></a>
|
||||
<a href="join.html#fusion.algorithms.transformation.functions.join.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Constant. Returns a view which is lazily evaluated.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.join.header"></a><h6>
|
||||
<a name="id585464"></a>
|
||||
<a name="id1143832"></a>
|
||||
<a href="join.html#fusion.algorithms.transformation.functions.join.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</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">transformation</span><span class="special">/</span><span class="identifier">join</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.algorithms.transformation.functions.join.example"></a><h6>
|
||||
<a name="id585570"></a>
|
||||
<a name="id1143925"></a>
|
||||
<a href="join.html#fusion.algorithms.transformation.functions.join.example">Example</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="../../../sequences/containers/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special"><</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">char</span><span class="special">></span> <span class="identifier">v1</span><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="char">'a'</span><span class="special">);</span>
|
||||
<a href="../../../sequences/containers/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special"><</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">char</span><span class="special">></span> <span class="identifier">v2</span><span class="special">(</span><span class="number">2</span><span class="special">,</span> <span class="char">'b'</span><span class="special">);</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="join.html" title="join"><tt class="computeroutput"><span class="identifier">join</span></tt></a><span class="special">(</span><span class="identifier">v1</span><span class="special">,</span> <span class="identifier">v2</span><span class="special">)</span> <span class="special">==</span> <a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><tt class="computeroutput"><span class="identifier">make_vector</span></tt></a><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="char">'a'</span><span class="special">,</span><span class="number">2</span><span class="special">,</span><span class="char">'b'</span><span class="special">));</span>
|
||||
<a href="../../../sequences/containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special"><</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">char</span><span class="special">></span> <span class="identifier">v1</span><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="char">'a'</span><span class="special">);</span>
|
||||
<a href="../../../sequences/containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special"><</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">char</span><span class="special">></span> <span class="identifier">v2</span><span class="special">(</span><span class="number">2</span><span class="special">,</span> <span class="char">'b'</span><span class="special">);</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="join.html" title="join"><code class="computeroutput"><span class="identifier">join</span></code></a><span class="special">(</span><span class="identifier">v1</span><span class="special">,</span> <span class="identifier">v2</span><span class="special">)</span> <span class="special">==</span> <a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><code class="computeroutput"><span class="identifier">make_vector</span></code></a><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="char">'a'</span><span class="special">,</span><span class="number">2</span><span class="special">,</span><span class="char">'b'</span><span class="special">));</span>
|
||||
</pre>
|
||||
</div>
|
||||
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>pop_back</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../functions.html" title="Functions">
|
||||
<link rel="prev" href="zip.html" title="zip">
|
||||
@@ -26,24 +26,24 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.transformation.functions.pop_back"></a><a href="pop_back.html" title="pop_back">pop_back</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.transformation.functions.pop_back.description"></a><h6>
|
||||
<a name="id587086"></a>
|
||||
<a name="id1145267"></a>
|
||||
<a href="pop_back.html#fusion.algorithms.transformation.functions.pop_back.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
Returns a new sequence, with the last element of the original removed.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.pop_back.synopsis"></a><h6>
|
||||
<a name="id587119"></a>
|
||||
<a name="id1145296"></a>
|
||||
<a href="pop_back.html#fusion.algorithms.transformation.functions.pop_back.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">template</span><span class="special"><</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">Sequence</span>
|
||||
<span class="special">></span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/pop_back.html" title="pop_back"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">pop_back</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">pop_back</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">seq</span><span class="special">);</span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/pop_back.html" title="pop_back"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">pop_back</span></code></a><span class="special"><</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">pop_back</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">seq</span><span class="special">);</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id587275"></a><p class="title"><b>Table 1.68. Parameters</b></p>
|
||||
<a name="id1145433"></a><p class="title"><b>Table 1.68. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -56,7 +56,7 @@
|
||||
<th>Description</th>
|
||||
</tr></thead>
|
||||
<tbody><tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">seq</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">seq</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
@@ -67,44 +67,44 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.transformation.functions.pop_back.expression_semantics"></a><h6>
|
||||
<a name="id587350"></a>
|
||||
<a name="id1145500"></a>
|
||||
<a href="pop_back.html#fusion.algorithms.transformation.functions.pop_back.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="pop_back.html" title="pop_back"><tt class="computeroutput"><span class="identifier">pop_back</span></tt></a><span class="special">(</span><span class="identifier">seq</span><span class="special">);</span>
|
||||
<a href="pop_back.html" title="pop_back"><code class="computeroutput"><span class="identifier">pop_back</span></code></a><span class="special">(</span><span class="identifier">seq</span><span class="special">);</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
<span class="bold"><strong>Return type</strong></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns a new sequence containing
|
||||
all the elements of <tt class="computeroutput"><span class="identifier">seq</span></tt>,
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns a new sequence containing
|
||||
all the elements of <code class="computeroutput"><span class="identifier">seq</span></code>,
|
||||
except the last element. The elements in the new sequence are in the
|
||||
same order as they were in <tt class="computeroutput"><span class="identifier">seq</span></tt>.
|
||||
same order as they were in <code class="computeroutput"><span class="identifier">seq</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.pop_back.complexity"></a><h6>
|
||||
<a name="id587468"></a>
|
||||
<a name="id1145604"></a>
|
||||
<a href="pop_back.html#fusion.algorithms.transformation.functions.pop_back.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Constant. Returns a view which is lazily evaluated.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.pop_back.header"></a><h6>
|
||||
<a name="id587499"></a>
|
||||
<a name="id1145632"></a>
|
||||
<a href="pop_back.html#fusion.algorithms.transformation.functions.pop_back.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</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">transformation</span><span class="special">/</span><span class="identifier">pop_back</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.algorithms.transformation.functions.pop_back.example"></a><h6>
|
||||
<a name="id587605"></a>
|
||||
<a name="id1145725"></a>
|
||||
<a href="pop_back.html#fusion.algorithms.transformation.functions.pop_back.example">Example</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="identifier">assert</span><span class="special">(</span><span class="identifier">___pop_back__</span><span class="special">(</span><a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><tt class="computeroutput"><span class="identifier">make_vector</span></tt></a><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="special">==</span> <a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><tt class="computeroutput"><span class="identifier">make_vector</span></tt></a><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">));</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><span class="identifier">___pop_back__</span><span class="special">(</span><a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><code class="computeroutput"><span class="identifier">make_vector</span></code></a><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="special">==</span> <a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><code class="computeroutput"><span class="identifier">make_vector</span></code></a><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">));</span>
|
||||
</pre>
|
||||
</div>
|
||||
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>pop_front</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../functions.html" title="Functions">
|
||||
<link rel="prev" href="pop_back.html" title="pop_back">
|
||||
@@ -26,24 +26,24 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.transformation.functions.pop_front"></a><a href="pop_front.html" title="pop_front">pop_front</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.transformation.functions.pop_front.description"></a><h6>
|
||||
<a name="id587780"></a>
|
||||
<a name="id1145881"></a>
|
||||
<a href="pop_front.html#fusion.algorithms.transformation.functions.pop_front.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
Returns a new sequence, with the first element of the original removed.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.pop_front.synopsis"></a><h6>
|
||||
<a name="id587813"></a>
|
||||
<a name="id1145888"></a>
|
||||
<a href="pop_front.html#fusion.algorithms.transformation.functions.pop_front.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">template</span><span class="special"><</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">Sequence</span>
|
||||
<span class="special">></span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/pop_front.html" title="pop_front"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">pop_front</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">pop_front</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">seq</span><span class="special">);</span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/pop_front.html" title="pop_front"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">pop_front</span></code></a><span class="special"><</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">pop_front</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">seq</span><span class="special">);</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id587969"></a><p class="title"><b>Table 1.69. Parameters</b></p>
|
||||
<a name="id1146046"></a><p class="title"><b>Table 1.69. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -56,7 +56,7 @@
|
||||
<th>Description</th>
|
||||
</tr></thead>
|
||||
<tbody><tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">seq</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">seq</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
@@ -67,44 +67,44 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.transformation.functions.pop_front.expression_semantics"></a><h6>
|
||||
<a name="id588045"></a>
|
||||
<a name="id1146114"></a>
|
||||
<a href="pop_front.html#fusion.algorithms.transformation.functions.pop_front.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="pop_front.html" title="pop_front"><tt class="computeroutput"><span class="identifier">pop_front</span></tt></a><span class="special">(</span><span class="identifier">seq</span><span class="special">);</span>
|
||||
<a href="pop_front.html" title="pop_front"><code class="computeroutput"><span class="identifier">pop_front</span></code></a><span class="special">(</span><span class="identifier">seq</span><span class="special">);</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
<span class="bold"><strong>Return type</strong></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns a new sequence containing
|
||||
all the elements of <tt class="computeroutput"><span class="identifier">seq</span></tt>,
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns a new sequence containing
|
||||
all the elements of <code class="computeroutput"><span class="identifier">seq</span></code>,
|
||||
except the first element. The elements in the new sequence are in the
|
||||
same order as they were in <tt class="computeroutput"><span class="identifier">seq</span></tt>.
|
||||
same order as they were in <code class="computeroutput"><span class="identifier">seq</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.pop_front.complexity"></a><h6>
|
||||
<a name="id588163"></a>
|
||||
<a name="id1146217"></a>
|
||||
<a href="pop_front.html#fusion.algorithms.transformation.functions.pop_front.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Constant. Returns a view which is lazily evaluated.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.pop_front.header"></a><h6>
|
||||
<a name="id588194"></a>
|
||||
<a name="id1146246"></a>
|
||||
<a href="pop_front.html#fusion.algorithms.transformation.functions.pop_front.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</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">transformation</span><span class="special">/</span><span class="identifier">pop_front</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.algorithms.transformation.functions.pop_front.example"></a><h6>
|
||||
<a name="id588300"></a>
|
||||
<a name="id1146339"></a>
|
||||
<a href="pop_front.html#fusion.algorithms.transformation.functions.pop_front.example">Example</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="pop_front.html" title="pop_front"><tt class="computeroutput"><span class="identifier">pop_front</span></tt></a><span class="special">(</span><a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><tt class="computeroutput"><span class="identifier">make_vector</span></tt></a><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="special">==</span> <a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><tt class="computeroutput"><span class="identifier">make_vector</span></tt></a><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="pop_front.html" title="pop_front"><code class="computeroutput"><span class="identifier">pop_front</span></code></a><span class="special">(</span><a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><code class="computeroutput"><span class="identifier">make_vector</span></code></a><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="special">==</span> <a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><code class="computeroutput"><span class="identifier">make_vector</span></code></a><span class="special">(</span><span class="number">2</span><span class="special">,</span><span class="number">3</span><span class="special">));</span>
|
||||
</pre>
|
||||
</div>
|
||||
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>push_back</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../functions.html" title="Functions">
|
||||
<link rel="prev" href="pop_front.html" title="pop_front">
|
||||
@@ -26,14 +26,14 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.transformation.functions.push_back"></a><a href="push_back.html" title="push_back">push_back</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.transformation.functions.push_back.description"></a><h6>
|
||||
<a name="id588482"></a>
|
||||
<a name="id1146502"></a>
|
||||
<a href="push_back.html#fusion.algorithms.transformation.functions.push_back.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
Returns a new sequence with an element added at the end.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.push_back.synopsis"></a><h6>
|
||||
<a name="id588515"></a>
|
||||
<a name="id1146509"></a>
|
||||
<a href="push_back.html#fusion.algorithms.transformation.functions.push_back.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -41,11 +41,11 @@
|
||||
<span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">T</span>
|
||||
<span class="special">></span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/push_back.html" title="push_back"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">push_back</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">T</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">push_back</span><span class="special">(</span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/push_back.html" title="push_back"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">push_back</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">T</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">push_back</span><span class="special">(</span>
|
||||
<span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">seq</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">t</span><span class="special">);</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id588724"></a><p class="title"><b>Table 1.70. Parameters</b></p>
|
||||
<a name="id1146713"></a><p class="title"><b>Table 1.70. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -59,7 +59,7 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">seq</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">seq</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
@@ -68,7 +68,7 @@
|
||||
<td>Operation's argument</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">t</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">t</span></code></td>
|
||||
<td>Any
|
||||
type</td>
|
||||
<td>The value to add to the end</td>
|
||||
@@ -77,44 +77,44 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.transformation.functions.push_back.expression_semantics"></a><h6>
|
||||
<a name="id588820"></a>
|
||||
<a name="id1146798"></a>
|
||||
<a href="push_back.html#fusion.algorithms.transformation.functions.push_back.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="push_back.html" title="push_back"><tt class="computeroutput"><span class="identifier">push_back</span></tt></a><span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">t</span><span class="special">);</span>
|
||||
<a href="push_back.html" title="push_back"><code class="computeroutput"><span class="identifier">push_back</span></code></a><span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">t</span><span class="special">);</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
<span class="bold"><strong>Return type</strong></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns a new sequence, containing
|
||||
all the elements of <tt class="computeroutput"><span class="identifier">seq</span></tt>,
|
||||
and new element <tt class="computeroutput"><span class="identifier">t</span></tt> appended
|
||||
to the end. The elements are in the same order as they were in <tt class="computeroutput"><span class="identifier">seq</span></tt>.
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns a new sequence, containing
|
||||
all the elements of <code class="computeroutput"><span class="identifier">seq</span></code>,
|
||||
and new element <code class="computeroutput"><span class="identifier">t</span></code> appended
|
||||
to the end. The elements are in the same order as they were in <code class="computeroutput"><span class="identifier">seq</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.push_back.complexity"></a><h6>
|
||||
<a name="id588959"></a>
|
||||
<a name="id1146920"></a>
|
||||
<a href="push_back.html#fusion.algorithms.transformation.functions.push_back.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Constant. Returns a view which is lazily evaluated.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.push_back.header"></a><h6>
|
||||
<a name="id588990"></a>
|
||||
<a name="id1146948"></a>
|
||||
<a href="push_back.html#fusion.algorithms.transformation.functions.push_back.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</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">transformation</span><span class="special">/</span><span class="identifier">push_back</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.algorithms.transformation.functions.push_back.example"></a><h6>
|
||||
<a name="id589096"></a>
|
||||
<a name="id1147042"></a>
|
||||
<a href="push_back.html#fusion.algorithms.transformation.functions.push_back.example">Example</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="push_back.html" title="push_back"><tt class="computeroutput"><span class="identifier">push_back</span></tt></a><span class="special">(</span><a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><tt class="computeroutput"><span class="identifier">make_vector</span></tt></a><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="number">4</span><span class="special">)</span> <span class="special">==</span> <a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><tt class="computeroutput"><span class="identifier">make_vector</span></tt></a><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="number">4</span><span class="special">));</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="push_back.html" title="push_back"><code class="computeroutput"><span class="identifier">push_back</span></code></a><span class="special">(</span><a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><code class="computeroutput"><span class="identifier">make_vector</span></code></a><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="number">4</span><span class="special">)</span> <span class="special">==</span> <a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><code class="computeroutput"><span class="identifier">make_vector</span></code></a><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="number">4</span><span class="special">));</span>
|
||||
</pre>
|
||||
</div>
|
||||
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>push_front</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../functions.html" title="Functions">
|
||||
<link rel="prev" href="push_back.html" title="push_back">
|
||||
@@ -26,14 +26,14 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.transformation.functions.push_front"></a><a href="push_front.html" title="push_front">push_front</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.transformation.functions.push_front.description"></a><h6>
|
||||
<a name="id589309"></a>
|
||||
<a name="id1147232"></a>
|
||||
<a href="push_front.html#fusion.algorithms.transformation.functions.push_front.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
Returns a new sequence with an element added at the beginning.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.push_front.synopsis"></a><h6>
|
||||
<a name="id589342"></a>
|
||||
<a name="id1147239"></a>
|
||||
<a href="push_front.html#fusion.algorithms.transformation.functions.push_front.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -41,11 +41,11 @@
|
||||
<span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">T</span>
|
||||
<span class="special">></span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/push_front.html" title="push_front"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">push_front</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">T</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">push_front</span><span class="special">(</span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/push_front.html" title="push_front"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">push_front</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">T</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">push_front</span><span class="special">(</span>
|
||||
<span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">seq</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">t</span><span class="special">);</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id589550"></a><p class="title"><b>Table 1.71. Parameters</b></p>
|
||||
<a name="id1147443"></a><p class="title"><b>Table 1.71. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -59,7 +59,7 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">seq</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">seq</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
@@ -68,7 +68,7 @@
|
||||
<td>Operation's argument</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">t</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">t</span></code></td>
|
||||
<td>Any
|
||||
type</td>
|
||||
<td>The value to add to the beginning</td>
|
||||
@@ -77,45 +77,45 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.transformation.functions.push_front.expression_semantics"></a><h6>
|
||||
<a name="id589647"></a>
|
||||
<a name="id1147528"></a>
|
||||
<a href="push_front.html#fusion.algorithms.transformation.functions.push_front.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="push_back.html" title="push_back"><tt class="computeroutput"><span class="identifier">push_back</span></tt></a><span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">t</span><span class="special">);</span>
|
||||
<a href="push_back.html" title="push_back"><code class="computeroutput"><span class="identifier">push_back</span></code></a><span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">t</span><span class="special">);</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
<span class="bold"><strong>Return type</strong></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns a new sequence, containing
|
||||
all the elements of <tt class="computeroutput"><span class="identifier">seq</span></tt>,
|
||||
and new element <tt class="computeroutput"><span class="identifier">t</span></tt> appended
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns a new sequence, containing
|
||||
all the elements of <code class="computeroutput"><span class="identifier">seq</span></code>,
|
||||
and new element <code class="computeroutput"><span class="identifier">t</span></code> appended
|
||||
to the beginning. The elements are in the same order as they were in
|
||||
<tt class="computeroutput"><span class="identifier">seq</span></tt>.
|
||||
<code class="computeroutput"><span class="identifier">seq</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.push_front.complexity"></a><h6>
|
||||
<a name="id589788"></a>
|
||||
<a name="id1147653"></a>
|
||||
<a href="push_front.html#fusion.algorithms.transformation.functions.push_front.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Constant. Returns a view which is lazily evaluated.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.push_front.header"></a><h6>
|
||||
<a name="id589819"></a>
|
||||
<a name="id1147681"></a>
|
||||
<a href="push_front.html#fusion.algorithms.transformation.functions.push_front.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</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">transformation</span><span class="special">/</span><span class="identifier">push_front</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.algorithms.transformation.functions.push_front.example"></a><h6>
|
||||
<a name="id589925"></a>
|
||||
<a name="id1147774"></a>
|
||||
<a href="push_front.html#fusion.algorithms.transformation.functions.push_front.example">Example</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="push_front.html" title="push_front"><tt class="computeroutput"><span class="identifier">push_front</span></tt></a><span class="special">(</span><a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><tt class="computeroutput"><span class="identifier">make_vector</span></tt></a><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="number">0</span><span class="special">)</span> <span class="special">==</span> <a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><tt class="computeroutput"><span class="identifier">make_vector</span></tt></a><span class="special">(</span><span class="number">0</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="push_front.html" title="push_front"><code class="computeroutput"><span class="identifier">push_front</span></code></a><span class="special">(</span><a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><code class="computeroutput"><span class="identifier">make_vector</span></code></a><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="number">0</span><span class="special">)</span> <span class="special">==</span> <a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><code class="computeroutput"><span class="identifier">make_vector</span></code></a><span class="special">(</span><span class="number">0</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>
|
||||
</pre>
|
||||
</div>
|
||||
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>remove</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../functions.html" title="Functions">
|
||||
<link rel="prev" href="replace_if.html" title="replace_if">
|
||||
@@ -26,7 +26,7 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.transformation.functions.remove"></a><a href="remove.html" title="remove">remove</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.transformation.functions.remove.description"></a><h6>
|
||||
<a name="id577468"></a>
|
||||
<a name="id1136755"></a>
|
||||
<a href="remove.html#fusion.algorithms.transformation.functions.remove.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
@@ -34,7 +34,7 @@
|
||||
except those of a given type.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.remove.synopsis"></a><h6>
|
||||
<a name="id577502"></a>
|
||||
<a name="id1136785"></a>
|
||||
<a href="remove.html#fusion.algorithms.transformation.functions.remove.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -42,10 +42,10 @@
|
||||
<span class="keyword">typename</span> <span class="identifier">T</span><span class="special">,</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">Sequence</span>
|
||||
<span class="special">></span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/remove.html" title="remove"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">remove</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">T</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">replace</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">seq</span><span class="special">);</span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/remove.html" title="remove"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">remove</span></code></a><span class="special"><</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">T</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">replace</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">seq</span><span class="special">);</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id577686"></a><p class="title"><b>Table 1.58. Parameters</b></p>
|
||||
<a name="id1136947"></a><p class="title"><b>Table 1.58. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -59,7 +59,7 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">seq</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">seq</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
@@ -68,7 +68,7 @@
|
||||
<td>Operation's argument</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">T</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">T</span></code></td>
|
||||
<td>Any
|
||||
type</td>
|
||||
<td>Type to remove</td>
|
||||
@@ -77,45 +77,45 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.transformation.functions.remove.expression_semantics"></a><h6>
|
||||
<a name="id577780"></a>
|
||||
<a name="id1137032"></a>
|
||||
<a href="remove.html#fusion.algorithms.transformation.functions.remove.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="remove.html" title="remove"><tt class="computeroutput"><span class="identifier">remove</span></tt></a><span class="special"><</span><span class="identifier">T</span><span class="special">>(</span><span class="identifier">seq</span><span class="special">);</span>
|
||||
<a href="remove.html" title="remove"><code class="computeroutput"><span class="identifier">remove</span></code></a><span class="special"><</span><span class="identifier">T</span><span class="special">>(</span><span class="identifier">seq</span><span class="special">);</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
<span class="bold"><strong>Return type</strong></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns a new sequence, containing
|
||||
all the elements of <tt class="computeroutput"><span class="identifier">seq</span></tt>,
|
||||
in their original order, except those of type <tt class="computeroutput"><span class="identifier">T</span></tt>.
|
||||
Equivalent to <tt class="computeroutput"><a href="remove_if.html" title="remove_if"><tt class="computeroutput"><span class="identifier">remove_if</span></tt></a><span class="special"><</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special"><</span><span class="identifier">_</span><span class="special">,</span><span class="identifier">T</span><span class="special">></span> <span class="special">>(</span><span class="identifier">seq</span><span class="special">)</span></tt>.
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns a new sequence, containing
|
||||
all the elements of <code class="computeroutput"><span class="identifier">seq</span></code>,
|
||||
in their original order, except those of type <code class="computeroutput"><span class="identifier">T</span></code>.
|
||||
Equivalent to <code class="computeroutput"><a href="remove_if.html" title="remove_if"><code class="computeroutput"><span class="identifier">remove_if</span></code></a><span class="special"><</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special"><</span><span class="identifier">_</span><span class="special">,</span><span class="identifier">T</span><span class="special">></span> <span class="special">>(</span><span class="identifier">seq</span><span class="special">)</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.remove.complexity"></a><h6>
|
||||
<a name="id577991"></a>
|
||||
<a name="id1137217"></a>
|
||||
<a href="remove.html#fusion.algorithms.transformation.functions.remove.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Constant. Returns a view which is lazily evaluated.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.remove.header"></a><h6>
|
||||
<a name="id578022"></a>
|
||||
<a name="id1137246"></a>
|
||||
<a href="remove.html#fusion.algorithms.transformation.functions.remove.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</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">transformation</span><span class="special">/</span><span class="identifier">remove</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.algorithms.transformation.functions.remove.example"></a><h6>
|
||||
<a name="id578128"></a>
|
||||
<a name="id1137339"></a>
|
||||
<a href="remove.html#fusion.algorithms.transformation.functions.remove.example">Example</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">const</span> <a href="../../../sequences/containers/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special"><</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">double</span><span class="special">></span> <span class="identifier">vec</span><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2.0</span><span class="special">);</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="remove.html" title="remove"><tt class="computeroutput"><span class="identifier">remove</span></tt></a><span class="special"><</span><span class="keyword">double</span><span class="special">>(</span><span class="identifier">vec</span><span class="special">)</span> <span class="special">==</span> <a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><tt class="computeroutput"><span class="identifier">make_vector</span></tt></a><span class="special">(</span><span class="number">1</span><span class="special">));</span>
|
||||
<span class="keyword">const</span> <a href="../../../sequences/containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special"><</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">double</span><span class="special">></span> <span class="identifier">vec</span><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2.0</span><span class="special">);</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="remove.html" title="remove"><code class="computeroutput"><span class="identifier">remove</span></code></a><span class="special"><</span><span class="keyword">double</span><span class="special">>(</span><span class="identifier">vec</span><span class="special">)</span> <span class="special">==</span> <a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><code class="computeroutput"><span class="identifier">make_vector</span></code></a><span class="special">(</span><span class="number">1</span><span class="special">));</span>
|
||||
</pre>
|
||||
</div>
|
||||
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>remove_if</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../functions.html" title="Functions">
|
||||
<link rel="prev" href="remove.html" title="remove">
|
||||
@@ -26,15 +26,15 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.transformation.functions.remove_if"></a><a href="remove_if.html" title="remove_if">remove_if</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.transformation.functions.remove_if.description"></a><h6>
|
||||
<a name="id578349"></a>
|
||||
<a name="id1137536"></a>
|
||||
<a href="remove_if.html#fusion.algorithms.transformation.functions.remove_if.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
Returns a new sequence, containing all the elements of the original except
|
||||
those where a given unary function object evaluates to <tt class="computeroutput"><span class="keyword">true</span></tt>.
|
||||
those where a given unary function object evaluates to <code class="computeroutput"><span class="keyword">true</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.remove_if.synopsis"></a><h6>
|
||||
<a name="id578393"></a>
|
||||
<a name="id1137543"></a>
|
||||
<a href="remove_if.html#fusion.algorithms.transformation.functions.remove_if.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -42,10 +42,10 @@
|
||||
<span class="keyword">typename</span> <span class="identifier">Pred</span><span class="special">,</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">Sequence</span>
|
||||
<span class="special">></span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/remove_if.html" title="remove_if"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">remove_if</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">Pred</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">remove_if</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">seq</span><span class="special">);</span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/remove_if.html" title="remove_if"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">remove_if</span></code></a><span class="special"><</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">Pred</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">remove_if</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">seq</span><span class="special">);</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id578578"></a><p class="title"><b>Table 1.59. Parameters</b></p>
|
||||
<a name="id1137737"></a><p class="title"><b>Table 1.59. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -59,7 +59,7 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">seq</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">seq</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
@@ -68,55 +68,57 @@
|
||||
<td>Operation's argument</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">Pred</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">Pred</span></code></td>
|
||||
<td>A
|
||||
model of unary MPL Lambda Expression</td>
|
||||
model of unary <a href="http://www.boost.org/libs/mpl/doc/refmanual/lambda-expression.html" target="_top">MPL
|
||||
Lambda Expression</a>
|
||||
</td>
|
||||
<td>Removal predicate</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.transformation.functions.remove_if.expression_semantics"></a><h6>
|
||||
<a name="id578674"></a>
|
||||
<a name="id1137829"></a>
|
||||
<a href="remove_if.html#fusion.algorithms.transformation.functions.remove_if.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="remove_if.html" title="remove_if"><tt class="computeroutput"><span class="identifier">remove_if</span></tt></a><span class="special"><</span><span class="identifier">Pred</span><span class="special">>(</span><span class="identifier">seq</span><span class="special">);</span>
|
||||
<a href="remove_if.html" title="remove_if"><code class="computeroutput"><span class="identifier">remove_if</span></code></a><span class="special"><</span><span class="identifier">Pred</span><span class="special">>(</span><span class="identifier">seq</span><span class="special">);</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
<span class="bold"><strong>Return type</strong></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns a new sequence, containing
|
||||
all the elements of <tt class="computeroutput"><span class="identifier">seq</span></tt>,
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns a new sequence, containing
|
||||
all the elements of <code class="computeroutput"><span class="identifier">seq</span></code>,
|
||||
in their original order, except those elements with types for which
|
||||
<tt class="computeroutput"><span class="identifier">Pred</span></tt> evaluates to <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">true_</span></tt>. Equivalent to <tt class="computeroutput"><a href="filter.html" title="filter"><tt class="computeroutput"><span class="identifier">filter</span></tt></a><span class="special"><</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">not_</span><span class="special"><</span><span class="identifier">Pred</span><span class="special">></span>
|
||||
<span class="special">>(</span><span class="identifier">seq</span><span class="special">)</span></tt>.
|
||||
<code class="computeroutput"><span class="identifier">Pred</span></code> evaluates to <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">true_</span></code>. Equivalent to <code class="computeroutput"><a href="filter.html" title="filter"><code class="computeroutput"><span class="identifier">filter</span></code></a><span class="special"><</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">not_</span><span class="special"><</span><span class="identifier">Pred</span><span class="special">></span>
|
||||
<span class="special">>(</span><span class="identifier">seq</span><span class="special">)</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.remove_if.complexity"></a><h6>
|
||||
<a name="id578915"></a>
|
||||
<a name="id1138040"></a>
|
||||
<a href="remove_if.html#fusion.algorithms.transformation.functions.remove_if.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Constant. Returns a view which is lazily evaluated.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.remove_if.header"></a><h6>
|
||||
<a name="id578946"></a>
|
||||
<a name="id1138069"></a>
|
||||
<a href="remove_if.html#fusion.algorithms.transformation.functions.remove_if.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</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">transformation</span><span class="special">/</span><span class="identifier">remove_if</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.algorithms.transformation.functions.remove_if.example"></a><h6>
|
||||
<a name="id579052"></a>
|
||||
<a name="id1138162"></a>
|
||||
<a href="remove_if.html#fusion.algorithms.transformation.functions.remove_if.example">Example</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">const</span> <a href="../../../sequences/containers/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special"><</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">double</span><span class="special">></span> <span class="identifier">vec</span><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2.0</span><span class="special">);</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="remove_if.html" title="remove_if"><tt class="computeroutput"><span class="identifier">remove_if</span></tt></a><span class="special"><</span><span class="identifier">is_floating_point</span><span class="special"><</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">_</span><span class="special">></span> <span class="special">>(</span><span class="identifier">vec</span><span class="special">)</span> <span class="special">==</span> <a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><tt class="computeroutput"><span class="identifier">make_vector</span></tt></a><span class="special">(</span><span class="number">1</span><span class="special">));</span>
|
||||
<span class="keyword">const</span> <a href="../../../sequences/containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special"><</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">double</span><span class="special">></span> <span class="identifier">vec</span><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2.0</span><span class="special">);</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="remove_if.html" title="remove_if"><code class="computeroutput"><span class="identifier">remove_if</span></code></a><span class="special"><</span><span class="identifier">is_floating_point</span><span class="special"><</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">_</span><span class="special">></span> <span class="special">>(</span><span class="identifier">vec</span><span class="special">)</span> <span class="special">==</span> <a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><code class="computeroutput"><span class="identifier">make_vector</span></code></a><span class="special">(</span><span class="number">1</span><span class="special">));</span>
|
||||
</pre>
|
||||
</div>
|
||||
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>replace</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../functions.html" title="Functions">
|
||||
<link rel="prev" href="transform.html" title="transform">
|
||||
@@ -26,7 +26,7 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.transformation.functions.replace"></a><a href="replace.html" title="replace">replace</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.transformation.functions.replace.description"></a><h6>
|
||||
<a name="id575415"></a>
|
||||
<a name="id1117467"></a>
|
||||
<a href="replace.html#fusion.algorithms.transformation.functions.replace.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
@@ -34,7 +34,7 @@
|
||||
a new value.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.replace.synopsis"></a><h6>
|
||||
<a name="id575448"></a>
|
||||
<a name="id1117497"></a>
|
||||
<a href="replace.html#fusion.algorithms.transformation.functions.replace.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -42,11 +42,11 @@
|
||||
<span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">T</span>
|
||||
<span class="special">></span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/replace.html" title="replace"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">replace</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">T</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">replace</span><span class="special">(</span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/replace.html" title="replace"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">replace</span></code></a><span class="special"><</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">T</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">replace</span><span class="special">(</span>
|
||||
<span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">seq</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">old_value</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">new_value</span><span class="special">);</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id575691"></a><p class="title"><b>Table 1.56. Parameters</b></p>
|
||||
<a name="id1117710"></a><p class="title"><b>Table 1.56. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -60,27 +60,27 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">seq</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">seq</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a>, <tt class="computeroutput"><span class="identifier">e</span> <span class="special">==</span> <span class="identifier">old_value</span></tt>
|
||||
is a valid expression, convertible to <tt class="computeroutput"><span class="keyword">bool</span></tt>,
|
||||
for each element <tt class="computeroutput"><span class="identifier">e</span></tt>
|
||||
in <tt class="computeroutput"><span class="identifier">seq</span></tt> with type
|
||||
convertible to <tt class="computeroutput"><span class="identifier">T</span></tt>
|
||||
Sequence</a>, <code class="computeroutput"><span class="identifier">e</span> <span class="special">==</span> <span class="identifier">old_value</span></code>
|
||||
is a valid expression, convertible to <code class="computeroutput"><span class="keyword">bool</span></code>,
|
||||
for each element <code class="computeroutput"><span class="identifier">e</span></code>
|
||||
in <code class="computeroutput"><span class="identifier">seq</span></code> with type
|
||||
convertible to <code class="computeroutput"><span class="identifier">T</span></code>
|
||||
</td>
|
||||
<td>Operation's
|
||||
argument</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">old_value</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">old_value</span></code></td>
|
||||
<td>Any
|
||||
type</td>
|
||||
<td>Value to replace</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">new_value</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">new_value</span></code></td>
|
||||
<td>Any
|
||||
type</td>
|
||||
<td>Replacement value</td>
|
||||
@@ -89,44 +89,44 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.transformation.functions.replace.expression_semantics"></a><h6>
|
||||
<a name="id575872"></a>
|
||||
<a name="id1117872"></a>
|
||||
<a href="replace.html#fusion.algorithms.transformation.functions.replace.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="replace.html" title="replace"><tt class="computeroutput"><span class="identifier">replace</span></tt></a><span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">old_value</span><span class="special">,</span> <span class="identifier">new_value</span><span class="special">);</span>
|
||||
<a href="replace.html" title="replace"><code class="computeroutput"><span class="identifier">replace</span></code></a><span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">old_value</span><span class="special">,</span> <span class="identifier">new_value</span><span class="special">);</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
<span class="bold"><strong>Return type</strong></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns a new sequence with
|
||||
all the values of <tt class="computeroutput"><span class="identifier">seq</span></tt>
|
||||
with <tt class="computeroutput"><span class="identifier">new_value</span></tt> assigned
|
||||
to elements with the same type and equal to <tt class="computeroutput"><span class="identifier">old_value</span></tt>.
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns a new sequence with
|
||||
all the values of <code class="computeroutput"><span class="identifier">seq</span></code>
|
||||
with <code class="computeroutput"><span class="identifier">new_value</span></code> assigned
|
||||
to elements with the same type and equal to <code class="computeroutput"><span class="identifier">old_value</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.replace.complexity"></a><h6>
|
||||
<a name="id576023"></a>
|
||||
<a name="id1118004"></a>
|
||||
<a href="replace.html#fusion.algorithms.transformation.functions.replace.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Constant. Returns a view which is lazily evaluated.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.replace.header"></a><h6>
|
||||
<a name="id576055"></a>
|
||||
<a name="id1118032"></a>
|
||||
<a href="replace.html#fusion.algorithms.transformation.functions.replace.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</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">transformation</span><span class="special">/</span><span class="identifier">replace</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.algorithms.transformation.functions.replace.example"></a><h6>
|
||||
<a name="id576162"></a>
|
||||
<a name="id1118125"></a>
|
||||
<a href="replace.html#fusion.algorithms.transformation.functions.replace.example">Example</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="replace.html" title="replace"><tt class="computeroutput"><span class="identifier">replace</span></tt></a><span class="special">(</span><a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><tt class="computeroutput"><span class="identifier">make_vector</span></tt></a><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">2</span><span class="special">,</span> <span class="number">3</span><span class="special">)</span> <span class="special">==</span> <a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><tt class="computeroutput"><span class="identifier">make_vector</span></tt></a><span class="special">(</span><span class="number">1</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="replace.html" title="replace"><code class="computeroutput"><span class="identifier">replace</span></code></a><span class="special">(</span><a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><code class="computeroutput"><span class="identifier">make_vector</span></code></a><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">2</span><span class="special">,</span> <span class="number">3</span><span class="special">)</span> <span class="special">==</span> <a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><code class="computeroutput"><span class="identifier">make_vector</span></code></a><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">3</span><span class="special">));</span>
|
||||
</pre>
|
||||
</div>
|
||||
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>replace_if</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../functions.html" title="Functions">
|
||||
<link rel="prev" href="replace.html" title="replace">
|
||||
@@ -26,16 +26,16 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.transformation.functions.replace_if"></a><a href="replace_if.html" title="replace_if">replace_if</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.transformation.functions.replace_if.description"></a><h6>
|
||||
<a name="id576358"></a>
|
||||
<a name="id1118301"></a>
|
||||
<a href="replace_if.html#fusion.algorithms.transformation.functions.replace_if.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
Replaces each element of a given sequence for which an unary function
|
||||
object evaluates to <tt class="computeroutput"><span class="keyword">true</span></tt>
|
||||
object evaluates to <code class="computeroutput"><span class="keyword">true</span></code>
|
||||
replaced with a new value.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.replace_if.synopsis"></a><h6>
|
||||
<a name="id576401"></a>
|
||||
<a name="id1118308"></a>
|
||||
<a href="replace_if.html#fusion.algorithms.transformation.functions.replace_if.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -43,11 +43,11 @@
|
||||
<span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">F</span><span class="special">,</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">T</span><span class="special">></span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/replace_if.html" title="replace_if"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">replace_if</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">F</span><span class="special">,</span> <span class="identifier">T</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">replace_if</span><span class="special">(</span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/replace_if.html" title="replace_if"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">replace_if</span></code></a><span class="special"><</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">F</span><span class="special">,</span> <span class="identifier">T</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">replace_if</span><span class="special">(</span>
|
||||
<span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">seq</span><span class="special">,</span> <span class="identifier">F</span> <span class="identifier">f</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">new_value</span><span class="special">);</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id576660"></a><p class="title"><b>Table 1.57. Parameters</b></p>
|
||||
<a name="id1136043"></a><p class="title"><b>Table 1.57. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -61,7 +61,7 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">seq</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">seq</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
@@ -70,16 +70,16 @@
|
||||
<td>Operation's argument</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">f</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">f</span></code></td>
|
||||
<td>A
|
||||
function object for which <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">)</span></tt> is a valid expression, convertible
|
||||
to <tt class="computeroutput"><span class="keyword">bool</span></tt>, for each element
|
||||
<tt class="computeroutput"><span class="identifier">e</span></tt> in <tt class="computeroutput"><span class="identifier">seq</span></tt>
|
||||
function object for which <code class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">)</span></code> is a valid expression, convertible
|
||||
to <code class="computeroutput"><span class="keyword">bool</span></code>, for each element
|
||||
<code class="computeroutput"><span class="identifier">e</span></code> in <code class="computeroutput"><span class="identifier">seq</span></code>
|
||||
</td>
|
||||
<td>Operation's argument</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">new_value</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">new_value</span></code></td>
|
||||
<td>Any
|
||||
type</td>
|
||||
<td>Replacement value</td>
|
||||
@@ -88,41 +88,41 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.transformation.functions.replace_if.expression_semantics"></a><h6>
|
||||
<a name="id576832"></a>
|
||||
<a name="id1136195"></a>
|
||||
<a href="replace_if.html#fusion.algorithms.transformation.functions.replace_if.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="replace_if.html" title="replace_if"><tt class="computeroutput"><span class="identifier">replace_if</span></tt></a><span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">f</span><span class="special">,</span> <span class="identifier">new_value</span><span class="special">);</span>
|
||||
<a href="replace_if.html" title="replace_if"><code class="computeroutput"><span class="identifier">replace_if</span></code></a><span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">f</span><span class="special">,</span> <span class="identifier">new_value</span><span class="special">);</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
<span class="bold"><strong>Return type</strong></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns a new sequence with
|
||||
all the elements of <tt class="computeroutput"><span class="identifier">seq</span></tt>,
|
||||
with <tt class="computeroutput"><span class="identifier">new_value</span></tt> assigned
|
||||
to each element for which <tt class="computeroutput"><span class="identifier">f</span></tt>
|
||||
evaluates to <tt class="computeroutput"><span class="keyword">true</span></tt>.
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns a new sequence with
|
||||
all the elements of <code class="computeroutput"><span class="identifier">seq</span></code>,
|
||||
with <code class="computeroutput"><span class="identifier">new_value</span></code> assigned
|
||||
to each element for which <code class="computeroutput"><span class="identifier">f</span></code>
|
||||
evaluates to <code class="computeroutput"><span class="keyword">true</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.replace_if.complexity"></a><h6>
|
||||
<a name="id576994"></a>
|
||||
<a name="id1136338"></a>
|
||||
<a href="replace_if.html#fusion.algorithms.transformation.functions.replace_if.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Constant. Returns a view which is lazily evaluated.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.replace_if.header"></a><h6>
|
||||
<a name="id577027"></a>
|
||||
<a name="id1136366"></a>
|
||||
<a href="replace_if.html#fusion.algorithms.transformation.functions.replace_if.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</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">transformation</span><span class="special">/</span><span class="identifier">replace_if</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.algorithms.transformation.functions.replace_if.example"></a><h6>
|
||||
<a name="id577133"></a>
|
||||
<a name="id1136459"></a>
|
||||
<a href="replace_if.html#fusion.algorithms.transformation.functions.replace_if.example">Example</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -135,7 +135,7 @@
|
||||
<span class="special">}</span>
|
||||
<span class="special">};</span>
|
||||
<span class="special">...</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="replace_if.html" title="replace_if"><tt class="computeroutput"><span class="identifier">replace_if</span></tt></a><span class="special">(</span><a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><tt class="computeroutput"><span class="identifier">make_vector</span></tt></a><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">),</span> <span class="identifier">odd</span><span class="special">(),</span> <span class="number">3</span><span class="special">)</span> <span class="special">==</span> <a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><tt class="computeroutput"><span class="identifier">make_vector</span></tt></a><span class="special">(</span><span class="number">3</span><span class="special">,</span><span class="number">2</span><span class="special">));</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="replace_if.html" title="replace_if"><code class="computeroutput"><span class="identifier">replace_if</span></code></a><span class="special">(</span><a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><code class="computeroutput"><span class="identifier">make_vector</span></code></a><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2</span><span class="special">),</span> <span class="identifier">odd</span><span class="special">(),</span> <span class="number">3</span><span class="special">)</span> <span class="special">==</span> <a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><code class="computeroutput"><span class="identifier">make_vector</span></code></a><span class="special">(</span><span class="number">3</span><span class="special">,</span><span class="number">2</span><span class="special">));</span>
|
||||
</pre>
|
||||
</div>
|
||||
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>reverse</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../functions.html" title="Functions">
|
||||
<link rel="prev" href="remove_if.html" title="remove_if">
|
||||
@@ -26,24 +26,24 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.transformation.functions.reverse"></a><a href="reverse.html" title="reverse">reverse</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.transformation.functions.reverse.description"></a><h6>
|
||||
<a name="id579301"></a>
|
||||
<a name="id1138382"></a>
|
||||
<a href="reverse.html#fusion.algorithms.transformation.functions.reverse.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
Returns a new sequence with the elements of the original in reverse order.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.reverse.synposis"></a><h6>
|
||||
<a name="id579333"></a>
|
||||
<a name="id1138412"></a>
|
||||
<a href="reverse.html#fusion.algorithms.transformation.functions.reverse.synposis">Synposis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">template</span><span class="special"><</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">Sequence</span>
|
||||
<span class="special">></span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/reverse.html" title="reverse"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">reverse</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">reverse</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">seq</span><span class="special">);</span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/reverse.html" title="reverse"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">reverse</span></code></a><span class="special"><</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">reverse</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">seq</span><span class="special">);</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id579489"></a><p class="title"><b>Table 1.60. Parameters</b></p>
|
||||
<a name="id1138549"></a><p class="title"><b>Table 1.60. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -56,7 +56,7 @@
|
||||
<th>Description</th>
|
||||
</tr></thead>
|
||||
<tbody><tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">seq</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">seq</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/bidirectional_sequence.html" title="Bidirectional
|
||||
Sequence">Bidirectional
|
||||
@@ -67,43 +67,43 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.transformation.functions.reverse.expression_semantics"></a><h6>
|
||||
<a name="id579564"></a>
|
||||
<a name="id1138616"></a>
|
||||
<a href="reverse.html#fusion.algorithms.transformation.functions.reverse.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="reverse.html" title="reverse"><tt class="computeroutput"><span class="identifier">reverse</span></tt></a><span class="special">(</span><span class="identifier">seq</span><span class="special">);</span>
|
||||
<a href="reverse.html" title="reverse"><code class="computeroutput"><span class="identifier">reverse</span></code></a><span class="special">(</span><span class="identifier">seq</span><span class="special">);</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequences/concepts/bidirectional_sequence.html" title="Bidirectional
|
||||
<span class="bold"><strong>Return type</strong></span>: A model of <a href="../../../sequences/concepts/bidirectional_sequence.html" title="Bidirectional
|
||||
Sequence">Bidirectional
|
||||
Sequence</a>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns a new sequence containing
|
||||
all the elements of <tt class="computeroutput"><span class="identifier">seq</span></tt>
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns a new sequence containing
|
||||
all the elements of <code class="computeroutput"><span class="identifier">seq</span></code>
|
||||
in reverse order.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.reverse.complexity"></a><h6>
|
||||
<a name="id579670"></a>
|
||||
<a name="id1138711"></a>
|
||||
<a href="reverse.html#fusion.algorithms.transformation.functions.reverse.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Constant. Returns a view which is lazily evaluated.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.reverse.header"></a><h6>
|
||||
<a name="id579703"></a>
|
||||
<a name="id1138739"></a>
|
||||
<a href="reverse.html#fusion.algorithms.transformation.functions.reverse.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</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">transformation</span><span class="special">/</span><span class="identifier">reverse</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.algorithms.transformation.functions.reverse.example"></a><h6>
|
||||
<a name="id579809"></a>
|
||||
<a name="id1138833"></a>
|
||||
<a href="reverse.html#fusion.algorithms.transformation.functions.reverse.example">Example</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="reverse.html" title="reverse"><tt class="computeroutput"><span class="identifier">reverse</span></tt></a><span class="special">(</span><a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><tt class="computeroutput"><span class="identifier">make_vector</span></tt></a><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="special">==</span> <a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><tt class="computeroutput"><span class="identifier">make_vector</span></tt></a><span class="special">(</span><span class="number">3</span><span class="special">,</span><span class="number">2</span><span class="special">,</span><span class="number">1</span><span class="special">));</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="reverse.html" title="reverse"><code class="computeroutput"><span class="identifier">reverse</span></code></a><span class="special">(</span><a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><code class="computeroutput"><span class="identifier">make_vector</span></code></a><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="special">==</span> <a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><code class="computeroutput"><span class="identifier">make_vector</span></code></a><span class="special">(</span><span class="number">3</span><span class="special">,</span><span class="number">2</span><span class="special">,</span><span class="number">1</span><span class="special">));</span>
|
||||
</pre>
|
||||
</div>
|
||||
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>transform</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../functions.html" title="Functions">
|
||||
<link rel="prev" href="filter_if.html" title="filter_if">
|
||||
@@ -26,19 +26,19 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.transformation.functions.transform"></a><a href="transform.html" title="transform">transform</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.transformation.functions.transform.description"></a><h6>
|
||||
<a name="id573674"></a>
|
||||
<a name="id1115932"></a>
|
||||
<a href="transform.html#fusion.algorithms.transformation.functions.transform.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
For a sequence <tt class="computeroutput"><span class="identifier">seq</span></tt> and
|
||||
<a href="../../concepts/poly.html" title=" Polymorphic Function
|
||||
For a sequence <code class="computeroutput"><span class="identifier">seq</span></code> and
|
||||
<a href="../../../functional/concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic Function
|
||||
Object</a> <tt class="computeroutput"><span class="identifier">F</span></tt>, <tt class="computeroutput"><span class="identifier">transform</span></tt> returns a new sequence with
|
||||
elements created by applying <tt class="computeroutput"><span class="identifier">F</span></tt>
|
||||
to each element of <tt class="computeroutput"><span class="identifier">seq</span></tt>.
|
||||
Object</a> <code class="computeroutput"><span class="identifier">F</span></code>, <code class="computeroutput"><span class="identifier">transform</span></code> returns a new sequence with
|
||||
elements created by applying <code class="computeroutput"><span class="identifier">F</span></code>
|
||||
to each element of <code class="computeroutput"><span class="identifier">seq</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.transform.unary_version_synopsis"></a><h6>
|
||||
<a name="id573768"></a>
|
||||
<a name="id1116015"></a>
|
||||
<a href="transform.html#fusion.algorithms.transformation.functions.transform.unary_version_synopsis">Unary
|
||||
version synopsis</a>
|
||||
</h6>
|
||||
@@ -47,11 +47,11 @@
|
||||
<span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">,</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">F</span>
|
||||
<span class="special">></span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/transform.html" title="transform"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">transform</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">F</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">transform</span><span class="special">(</span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/transform.html" title="transform"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">transform</span></code></a><span class="special"><</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">F</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">transform</span><span class="special">(</span>
|
||||
<span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">seq</span><span class="special">,</span> <span class="identifier">F</span> <span class="identifier">f</span><span class="special">);</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id573972"></a><p class="title"><b>Table 1.54. Parameters</b></p>
|
||||
<a name="id1116193"></a><p class="title"><b>Table 1.54. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -65,7 +65,7 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">seq</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">seq</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
@@ -74,12 +74,12 @@
|
||||
<td>Operation's argument</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">f</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">f</span></code></td>
|
||||
<td>A
|
||||
model of unary <a href="../../concepts/poly.html" title=" Polymorphic Function
|
||||
model of unary <a href="../../../functional/concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic
|
||||
Function Object</a> where <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">)</span></tt> is a valid expression for each element
|
||||
<tt class="computeroutput"><span class="identifier">e</span></tt> of <tt class="computeroutput"><span class="identifier">seq</span></tt>
|
||||
Function Object</a> where <code class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">)</span></code> is a valid expression for each element
|
||||
<code class="computeroutput"><span class="identifier">e</span></code> of <code class="computeroutput"><span class="identifier">seq</span></code>
|
||||
</td>
|
||||
<td>Transformation
|
||||
function</td>
|
||||
@@ -88,25 +88,25 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.transformation.functions.transform.expression_semantics"></a><h6>
|
||||
<a name="id574120"></a>
|
||||
<a name="id1116325"></a>
|
||||
<a href="transform.html#fusion.algorithms.transformation.functions.transform.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="transform.html" title="transform"><tt class="computeroutput"><span class="identifier">transform</span></tt></a><span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">f</span><span class="special">);</span>
|
||||
<a href="transform.html" title="transform"><code class="computeroutput"><span class="identifier">transform</span></code></a><span class="special">(</span><span class="identifier">seq</span><span class="special">,</span> <span class="identifier">f</span><span class="special">);</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
<span class="bold"><strong>Return type</strong></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a>
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns a new sequence, containing
|
||||
the return values of <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">)</span></tt> for each element <tt class="computeroutput"><span class="identifier">e</span></tt>
|
||||
within <tt class="computeroutput"><span class="identifier">seq</span></tt>.
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns a new sequence, containing
|
||||
the return values of <code class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e</span><span class="special">)</span></code> for each element <code class="computeroutput"><span class="identifier">e</span></code>
|
||||
within <code class="computeroutput"><span class="identifier">seq</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.transform.binary_version_synopsis"></a><h6>
|
||||
<a name="id574273"></a>
|
||||
<a name="id1116461"></a>
|
||||
<a href="transform.html#fusion.algorithms.transformation.functions.transform.binary_version_synopsis">Binary
|
||||
version synopsis</a>
|
||||
</h6>
|
||||
@@ -116,11 +116,11 @@
|
||||
<span class="keyword">typename</span> <span class="identifier">Sequence2</span><span class="special">,</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">F</span>
|
||||
<span class="special">></span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/transform.html" title="transform"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">transform</span></tt></a><span class="special"><</span><span class="identifier">Sequence1</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">Sequence2</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">F</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">transform</span><span class="special">(</span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/transform.html" title="transform"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">transform</span></code></a><span class="special"><</span><span class="identifier">Sequence1</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">Sequence2</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">F</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">transform</span><span class="special">(</span>
|
||||
<span class="identifier">Sequence1</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">seq1</span><span class="special">,</span> <span class="identifier">Sequence2</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">seq2</span><span class="special">,</span> <span class="identifier">F</span> <span class="identifier">f</span><span class="special">);</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id574540"></a><p class="title"><b>Table 1.55. Parameters</b></p>
|
||||
<a name="id1116693"></a><p class="title"><b>Table 1.55. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -134,7 +134,7 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">seq1</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">seq1</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
@@ -143,7 +143,7 @@
|
||||
<td>Operation's argument</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">seq2</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">seq2</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
@@ -152,13 +152,13 @@
|
||||
<td>Operation's argument</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">f</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">f</span></code></td>
|
||||
<td>A
|
||||
model of binary <a href="../../concepts/poly.html" title=" Polymorphic Function
|
||||
model of binary <a href="../../../functional/concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic
|
||||
Function Object</a> where <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e1</span><span class="special">,</span> <span class="identifier">e2</span><span class="special">)</span></tt> is a valid expression for each pair
|
||||
of elements <tt class="computeroutput"><span class="identifier">e1</span></tt> and
|
||||
<tt class="computeroutput"><span class="identifier">e2</span></tt> of <tt class="computeroutput"><span class="identifier">seq1</span></tt> and <tt class="computeroutput"><span class="identifier">seq2</span></tt>
|
||||
Function Object</a> where <code class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e1</span><span class="special">,</span> <span class="identifier">e2</span><span class="special">)</span></code> is a valid expression for each pair
|
||||
of elements <code class="computeroutput"><span class="identifier">e1</span></code> and
|
||||
<code class="computeroutput"><span class="identifier">e2</span></code> of <code class="computeroutput"><span class="identifier">seq1</span></code> and <code class="computeroutput"><span class="identifier">seq2</span></code>
|
||||
respectively</td>
|
||||
<td>Transformation function</td>
|
||||
</tr>
|
||||
@@ -166,31 +166,31 @@
|
||||
</table>
|
||||
</div>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
<span class="bold"><strong>Return type</strong></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns a new sequence, containing
|
||||
the return values of <tt class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e1</span><span class="special">,</span> <span class="identifier">e2</span><span class="special">)</span></tt> for each pair of elements <tt class="computeroutput"><span class="identifier">e1</span></tt> and <tt class="computeroutput"><span class="identifier">e2</span></tt>
|
||||
within <tt class="computeroutput"><span class="identifier">seq1</span></tt> and <tt class="computeroutput"><span class="identifier">seq2</span></tt> respectively.
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns a new sequence, containing
|
||||
the return values of <code class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">e1</span><span class="special">,</span> <span class="identifier">e2</span><span class="special">)</span></code> for each pair of elements <code class="computeroutput"><span class="identifier">e1</span></code> and <code class="computeroutput"><span class="identifier">e2</span></code>
|
||||
within <code class="computeroutput"><span class="identifier">seq1</span></code> and <code class="computeroutput"><span class="identifier">seq2</span></code> respectively.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.transform.complexity"></a><h6>
|
||||
<a name="id574859"></a>
|
||||
<a name="id1116974"></a>
|
||||
<a href="transform.html#fusion.algorithms.transformation.functions.transform.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Constant. Returns a view which is lazily evaluated.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.transform.header"></a><h6>
|
||||
<a name="id574890"></a>
|
||||
<a name="id1117003"></a>
|
||||
<a href="transform.html#fusion.algorithms.transformation.functions.transform.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</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">transformation</span><span class="special">/</span><span class="identifier">transform</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.algorithms.transformation.functions.transform.example"></a><h6>
|
||||
<a name="id574996"></a>
|
||||
<a name="id1117096"></a>
|
||||
<a href="transform.html#fusion.algorithms.transformation.functions.transform.example">Example</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -209,7 +209,7 @@
|
||||
<span class="special">};</span>
|
||||
<span class="special">};</span>
|
||||
<span class="special">...</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="transform.html" title="transform"><tt class="computeroutput"><span class="identifier">transform</span></tt></a><span class="special">(</span><a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><tt class="computeroutput"><span class="identifier">make_vector</span></tt></a><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">triple</span><span class="special">())</span> <span class="special">==</span> <a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><tt class="computeroutput"><span class="identifier">make_vector</span></tt></a><span class="special">(</span><span class="number">3</span><span class="special">,</span><span class="number">6</span><span class="special">,</span><span class="number">9</span><span class="special">));</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="transform.html" title="transform"><code class="computeroutput"><span class="identifier">transform</span></code></a><span class="special">(</span><a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><code class="computeroutput"><span class="identifier">make_vector</span></code></a><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">triple</span><span class="special">())</span> <span class="special">==</span> <a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><code class="computeroutput"><span class="identifier">make_vector</span></code></a><span class="special">(</span><span class="number">3</span><span class="special">,</span><span class="number">6</span><span class="special">,</span><span class="number">9</span><span class="special">));</span>
|
||||
</pre>
|
||||
</div>
|
||||
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>zip</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../functions.html" title="Functions">
|
||||
<link rel="prev" href="join.html" title="join">
|
||||
@@ -26,7 +26,7 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.transformation.functions.zip"></a><a href="zip.html" title="zip">zip</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.transformation.functions.zip.description"></a><h6>
|
||||
<a name="id585886"></a>
|
||||
<a name="id1144205"></a>
|
||||
<a href="zip.html#fusion.algorithms.transformation.functions.zip.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
@@ -34,7 +34,7 @@
|
||||
of the members of the component sequences.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.zip.synopsis"></a><h6>
|
||||
<a name="id585920"></a>
|
||||
<a name="id1144235"></a>
|
||||
<a href="zip.html#fusion.algorithms.transformation.functions.zip.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -44,11 +44,11 @@
|
||||
<span class="special">...</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">SequenceN</span>
|
||||
<span class="special">></span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/zip.html" title="zip"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">zip</span></tt></a><span class="special"><</span><span class="identifier">Sequence1</span><span class="special">,</span> <span class="identifier">Sequence2</span><span class="special">,</span> <span class="special">...</span> <span class="identifier">SequenceN</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<span class="keyword">typename</span> <a href="../metafunctions/zip.html" title="zip"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">zip</span></code></a><span class="special"><</span><span class="identifier">Sequence1</span><span class="special">,</span> <span class="identifier">Sequence2</span><span class="special">,</span> <span class="special">...</span> <span class="identifier">SequenceN</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<span class="identifier">zip</span><span class="special">(</span><span class="identifier">Sequence1</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">seq1</span><span class="special">,</span> <span class="identifier">Sequence2</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">seq2</span><span class="special">,</span> <span class="special">...</span> <span class="identifier">SequenceN</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">seqN</span><span class="special">);</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id586203"></a><p class="title"><b>Table 1.67. Parameters</b></p>
|
||||
<a name="id1144484"></a><p class="title"><b>Table 1.67. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -62,7 +62,7 @@
|
||||
</tr></thead>
|
||||
<tbody><tr>
|
||||
<td>
|
||||
<tt class="computeroutput"><span class="identifier">seq1</span></tt> to <tt class="computeroutput"><span class="identifier">seqN</span></tt>
|
||||
<code class="computeroutput"><span class="identifier">seq1</span></code> to <code class="computeroutput"><span class="identifier">seqN</span></code>
|
||||
</td>
|
||||
<td>Each sequence
|
||||
is a model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
@@ -73,50 +73,50 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.transformation.functions.zip.expression_semantics"></a><h6>
|
||||
<a name="id586290"></a>
|
||||
<a name="id1144562"></a>
|
||||
<a href="zip.html#fusion.algorithms.transformation.functions.zip.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="zip.html" title="zip"><tt class="computeroutput"><span class="identifier">zip</span></tt></a><span class="special">(</span><span class="identifier">seq1</span><span class="special">,</span> <span class="identifier">seq2</span><span class="special">,</span> <span class="special">...</span> <span class="identifier">seqN</span><span class="special">);</span>
|
||||
<a href="zip.html" title="zip"><code class="computeroutput"><span class="identifier">zip</span></code></a><span class="special">(</span><span class="identifier">seq1</span><span class="special">,</span> <span class="identifier">seq2</span><span class="special">,</span> <span class="special">...</span> <span class="identifier">seqN</span><span class="special">);</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
<span class="bold"><strong>Return type</strong></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns a sequence containing
|
||||
tuples of elements from sequences <tt class="computeroutput"><span class="identifier">seq1</span></tt>
|
||||
to <tt class="computeroutput"><span class="identifier">seqN</span></tt>. For example,
|
||||
applying zip to tuples <tt class="computeroutput"><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></tt>
|
||||
and <tt class="computeroutput"><span class="special">(</span><span class="char">'a'</span><span class="special">,</span> <span class="char">'b'</span><span class="special">,</span>
|
||||
<span class="char">'c'</span><span class="special">)</span></tt>
|
||||
would return <tt class="computeroutput"><span class="special">((</span><span class="number">1</span><span class="special">,</span> <span class="char">'a'</span><span class="special">),(</span><span class="number">2</span><span class="special">,</span> <span class="char">'b'</span><span class="special">),(</span><span class="number">3</span><span class="special">,</span>
|
||||
<span class="char">'c'</span><span class="special">))</span></tt>
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns a sequence containing
|
||||
tuples of elements from sequences <code class="computeroutput"><span class="identifier">seq1</span></code>
|
||||
to <code class="computeroutput"><span class="identifier">seqN</span></code>. For example,
|
||||
applying zip to tuples <code class="computeroutput"><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></code>
|
||||
and <code class="computeroutput"><span class="special">(</span><span class="char">'a'</span><span class="special">,</span> <span class="char">'b'</span><span class="special">,</span>
|
||||
<span class="char">'c'</span><span class="special">)</span></code>
|
||||
would return <code class="computeroutput"><span class="special">((</span><span class="number">1</span><span class="special">,</span> <span class="char">'a'</span><span class="special">),(</span><span class="number">2</span><span class="special">,</span> <span class="char">'b'</span><span class="special">),(</span><span class="number">3</span><span class="special">,</span>
|
||||
<span class="char">'c'</span><span class="special">))</span></code>
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.zip.complexity"></a><h6>
|
||||
<a name="id586588"></a>
|
||||
<a name="id1144827"></a>
|
||||
<a href="zip.html#fusion.algorithms.transformation.functions.zip.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Constant. Returns a view which is lazily evaluated.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.functions.zip.header"></a><h6>
|
||||
<a name="id586621"></a>
|
||||
<a name="id1144855"></a>
|
||||
<a href="zip.html#fusion.algorithms.transformation.functions.zip.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</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">transformation</span><span class="special">/</span><span class="identifier">zip</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.algorithms.transformation.functions.zip.example"></a><h6>
|
||||
<a name="id586726"></a>
|
||||
<a name="id1144947"></a>
|
||||
<a href="zip.html#fusion.algorithms.transformation.functions.zip.example">Example</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="../../../sequences/containers/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special"><</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">char</span><span class="special">></span> <span class="identifier">v1</span><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="char">'a'</span><span class="special">);</span>
|
||||
<a href="../../../sequences/containers/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special"><</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">char</span><span class="special">></span> <span class="identifier">v2</span><span class="special">(</span><span class="number">2</span><span class="special">,</span> <span class="char">'b'</span><span class="special">);</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="zip.html" title="zip"><tt class="computeroutput"><span class="identifier">zip</span></tt></a><span class="special">(</span><span class="identifier">v1</span><span class="special">,</span> <span class="identifier">v2</span><span class="special">)</span> <span class="special">==</span> <a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><tt class="computeroutput"><span class="identifier">make_vector</span></tt></a><span class="special">(</span><a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><tt class="computeroutput"><span class="identifier">make_vector</span></tt></a><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="number">2</span><span class="special">),</span><a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><tt class="computeroutput"><span class="identifier">make_vector</span></tt></a><span class="special">(</span><span class="char">'a'</span><span class="special">,</span> <span class="char">'b'</span><span class="special">));</span>
|
||||
<a href="../../../sequences/containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special"><</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">char</span><span class="special">></span> <span class="identifier">v1</span><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="char">'a'</span><span class="special">);</span>
|
||||
<a href="../../../sequences/containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special"><</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">char</span><span class="special">></span> <span class="identifier">v2</span><span class="special">(</span><span class="number">2</span><span class="special">,</span> <span class="char">'b'</span><span class="special">);</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="zip.html" title="zip"><code class="computeroutput"><span class="identifier">zip</span></code></a><span class="special">(</span><span class="identifier">v1</span><span class="special">,</span> <span class="identifier">v2</span><span class="special">)</span> <span class="special">==</span> <a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><code class="computeroutput"><span class="identifier">make_vector</span></code></a><span class="special">(</span><a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><code class="computeroutput"><span class="identifier">make_vector</span></code></a><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="number">2</span><span class="special">),</span><a href="../../../sequences/generation/functions/make_vector.html" title="make_vector"><code class="computeroutput"><span class="identifier">make_vector</span></code></a><span class="special">(</span><span class="char">'a'</span><span class="special">,</span> <span class="char">'b'</span><span class="special">));</span>
|
||||
</pre>
|
||||
</div>
|
||||
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>Metafunctions</title>
|
||||
<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../transformation.html" title="Transformation">
|
||||
<link rel="prev" href="functions/push_front.html" title="push_front">
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>clear</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../metafunctions.html" title="Metafunctions">
|
||||
<link rel="prev" href="reverse.html" title="reverse">
|
||||
@@ -26,15 +26,15 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.transformation.metafunctions.clear"></a><a href="clear.html" title="clear">clear</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.clear.description"></a><h6>
|
||||
<a name="id595075"></a>
|
||||
<a name="id1152358"></a>
|
||||
<a href="clear.html#fusion.algorithms.transformation.metafunctions.clear.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
Returns the result type of <a href="../functions/clear.html" title="clear"><tt class="computeroutput"><span class="identifier">clear</span></tt></a>, given the input sequence
|
||||
Returns the result type of <a href="../functions/clear.html" title="clear"><code class="computeroutput"><span class="identifier">clear</span></code></a>, given the input sequence
|
||||
type.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.clear.synopsis"></a><h6>
|
||||
<a name="id595124"></a>
|
||||
<a name="id1152401"></a>
|
||||
<a href="clear.html#fusion.algorithms.transformation.metafunctions.clear.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -47,7 +47,7 @@
|
||||
<span class="special">};</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id595225"></a><p class="title"><b>Table 1.80. Parameters</b></p>
|
||||
<a name="id1152490"></a><p class="title"><b>Table 1.80. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -60,7 +60,7 @@
|
||||
<th>Description</th>
|
||||
</tr></thead>
|
||||
<tbody><tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">Sequence</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">Sequence</span></code></td>
|
||||
<td>Any
|
||||
type</td>
|
||||
<td>Operation's argument</td>
|
||||
@@ -68,30 +68,30 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.clear.expression_semantics"></a><h6>
|
||||
<a name="id595293"></a>
|
||||
<a name="id1152550"></a>
|
||||
<a href="clear.html#fusion.algorithms.transformation.metafunctions.clear.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="clear.html" title="clear"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">clear</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<a href="clear.html" title="clear"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">clear</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
<span class="bold"><strong>Return type</strong></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns an empty sequence.
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns an empty sequence.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.clear.complexity"></a><h6>
|
||||
<a name="id595407"></a>
|
||||
<a name="id1152648"></a>
|
||||
<a href="clear.html#fusion.algorithms.transformation.metafunctions.clear.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Constant.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.clear.header"></a><h6>
|
||||
<a name="id595438"></a>
|
||||
<a name="id1152676"></a>
|
||||
<a href="clear.html#fusion.algorithms.transformation.metafunctions.clear.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>erase</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../metafunctions.html" title="Metafunctions">
|
||||
<link rel="prev" href="clear.html" title="clear">
|
||||
@@ -26,15 +26,15 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.transformation.metafunctions.erase"></a><a href="erase.html" title="erase">erase</a></h5></div></div></div>
|
||||
<p>
|
||||
Returns the result type of <a href="../functions/erase.html" title="erase"><tt class="computeroutput"><span class="identifier">erase</span></tt></a>, given the input sequence
|
||||
Returns the result type of <a href="../functions/erase.html" title="erase"><code class="computeroutput"><span class="identifier">erase</span></code></a>, given the input sequence
|
||||
and range delimiting iterator types.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.erase.description"></a><h6>
|
||||
<a name="id595588"></a>
|
||||
<a name="id1152810"></a>
|
||||
<a href="erase.html#fusion.algorithms.transformation.metafunctions.erase.description">Description</a>
|
||||
</h6>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.erase.synopsis"></a><h6>
|
||||
<a name="id595615"></a>
|
||||
<a name="id1152818"></a>
|
||||
<a href="erase.html#fusion.algorithms.transformation.metafunctions.erase.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -48,7 +48,7 @@
|
||||
<span class="special">};</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id595760"></a><p class="title"><b>Table 1.81. Parameters</b></p>
|
||||
<a name="id1152961"></a><p class="title"><b>Table 1.81. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -62,7 +62,7 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">Sequence</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">Sequence</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
@@ -71,7 +71,7 @@
|
||||
<td>Operation's argument</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">It1</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">It1</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../iterators/concepts/forward_iterator.html" title="Forward
|
||||
Iterator">Forward
|
||||
@@ -80,7 +80,7 @@
|
||||
<td>Operation's argument</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">It2</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">It2</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../iterators/concepts/forward_iterator.html" title="Forward
|
||||
Iterator">Forward
|
||||
@@ -92,44 +92,44 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.erase.expression_semantics"></a><h6>
|
||||
<a name="id595892"></a>
|
||||
<a name="id1153079"></a>
|
||||
<a href="erase.html#fusion.algorithms.transformation.metafunctions.erase.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="erase.html" title="erase"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">erase</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">It1</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<a href="erase.html" title="erase"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">erase</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">It1</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
<span class="bold"><strong>Return type</strong></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns a new sequence with
|
||||
the element at <tt class="computeroutput"><span class="identifier">It1</span></tt> removed.
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns a new sequence with
|
||||
the element at <code class="computeroutput"><span class="identifier">It1</span></code> removed.
|
||||
</p>
|
||||
<pre class="programlisting">
|
||||
<a href="erase.html" title="erase"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">erase</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">It1</span><span class="special">,</span> <span class="identifier">It2</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<a href="erase.html" title="erase"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">erase</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">It1</span><span class="special">,</span> <span class="identifier">It2</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
<span class="bold"><strong>Return type</strong></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns a new sequence with
|
||||
the elements between <tt class="computeroutput"><span class="identifier">It1</span></tt>
|
||||
and <tt class="computeroutput"><span class="identifier">It2</span></tt> removed.
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns a new sequence with
|
||||
the elements between <code class="computeroutput"><span class="identifier">It1</span></code>
|
||||
and <code class="computeroutput"><span class="identifier">It2</span></code> removed.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.erase.complexity"></a><h6>
|
||||
<a name="id596153"></a>
|
||||
<a name="id1153307"></a>
|
||||
<a href="erase.html#fusion.algorithms.transformation.metafunctions.erase.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Constant.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.erase.header"></a><h6>
|
||||
<a name="id596185"></a>
|
||||
<a name="id1153335"></a>
|
||||
<a href="erase.html#fusion.algorithms.transformation.metafunctions.erase.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>erase_key</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../metafunctions.html" title="Metafunctions">
|
||||
<link rel="prev" href="erase.html" title="erase">
|
||||
@@ -26,15 +26,15 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.transformation.metafunctions.erase_key"></a><a href="erase_key.html" title="erase_key">erase_key</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.erase_key.description"></a><h6>
|
||||
<a name="id596315"></a>
|
||||
<a name="id1170928"></a>
|
||||
<a href="erase_key.html#fusion.algorithms.transformation.metafunctions.erase_key.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
Returns the result type of <a href="../functions/erase_key.html" title="erase_key"><tt class="computeroutput"><span class="identifier">erase_key</span></tt></a>, given the sequence
|
||||
Returns the result type of <a href="../functions/erase_key.html" title="erase_key"><code class="computeroutput"><span class="identifier">erase_key</span></code></a>, given the sequence
|
||||
and key types.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.erase_key.synopsis"></a><h6>
|
||||
<a name="id596366"></a>
|
||||
<a name="id1170973"></a>
|
||||
<a href="erase_key.html#fusion.algorithms.transformation.metafunctions.erase_key.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -48,7 +48,7 @@
|
||||
<span class="special">};</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id596484"></a><p class="title"><b>Table 1.82. Parameters</b></p>
|
||||
<a name="id1171078"></a><p class="title"><b>Table 1.82. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -62,7 +62,7 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">Sequence</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">Sequence</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/associative_sequence.html" title="Associative
|
||||
Sequence">Associative
|
||||
@@ -71,7 +71,7 @@
|
||||
<td>Operation's argument</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">Key</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">Key</span></code></td>
|
||||
<td>Any
|
||||
type</td>
|
||||
<td>Key type</td>
|
||||
@@ -80,32 +80,32 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.erase_key.expression_semantics"></a><h6>
|
||||
<a name="id596580"></a>
|
||||
<a name="id1171162"></a>
|
||||
<a href="erase_key.html#fusion.algorithms.transformation.metafunctions.erase_key.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="erase_key.html" title="erase_key"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">erase_key</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">Key</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<a href="erase_key.html" title="erase_key"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">erase_key</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">Key</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequences/concepts/associative_sequence.html" title="Associative
|
||||
<span class="bold"><strong>Return type</strong></span>: A model of <a href="../../../sequences/concepts/associative_sequence.html" title="Associative
|
||||
Sequence">Associative
|
||||
Sequence</a>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns a sequence with the
|
||||
elements of <tt class="computeroutput"><span class="identifier">Sequence</span></tt>,
|
||||
except those with key <tt class="computeroutput"><span class="identifier">Key</span></tt>.
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns a sequence with the
|
||||
elements of <code class="computeroutput"><span class="identifier">Sequence</span></code>,
|
||||
except those with key <code class="computeroutput"><span class="identifier">Key</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.erase_key.complexity"></a><h6>
|
||||
<a name="id596724"></a>
|
||||
<a name="id1171290"></a>
|
||||
<a href="erase_key.html#fusion.algorithms.transformation.metafunctions.erase_key.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Constant.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.erase_key.header"></a><h6>
|
||||
<a name="id596756"></a>
|
||||
<a name="id1171298"></a>
|
||||
<a href="erase_key.html#fusion.algorithms.transformation.metafunctions.erase_key.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>filter</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../metafunctions.html" title="Metafunctions">
|
||||
<link rel="prev" href="../metafunctions.html" title="Metafunctions">
|
||||
@@ -26,15 +26,15 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.transformation.metafunctions.filter"></a><a href="filter.html" title="filter">filter</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.filter.description"></a><h6>
|
||||
<a name="id590157"></a>
|
||||
<a name="id1147981"></a>
|
||||
<a href="filter.html#fusion.algorithms.transformation.metafunctions.filter.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
Returns the result type of <a href="../functions/filter.html" title="filter"><tt class="computeroutput"><span class="identifier">filter</span></tt></a> given the sequence type
|
||||
Returns the result type of <a href="../functions/filter.html" title="filter"><code class="computeroutput"><span class="identifier">filter</span></code></a> given the sequence type
|
||||
and type to retain.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.filter.synopsis"></a><h6>
|
||||
<a name="id590206"></a>
|
||||
<a name="id1148025"></a>
|
||||
<a href="filter.html#fusion.algorithms.transformation.metafunctions.filter.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -48,7 +48,7 @@
|
||||
<span class="special">};</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id590324"></a><p class="title"><b>Table 1.72. Parameter</b></p>
|
||||
<a name="id1148129"></a><p class="title"><b>Table 1.72. Parameter</b></p>
|
||||
<table class="table" summary="Parameter">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -62,7 +62,7 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">Sequence</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">Sequence</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
@@ -71,7 +71,7 @@
|
||||
<td>Operation's argument</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">T</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">T</span></code></td>
|
||||
<td>Any
|
||||
type</td>
|
||||
<td>Type to retain</td>
|
||||
@@ -80,34 +80,34 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.filter.expression_semantics"></a><h6>
|
||||
<a name="id590421"></a>
|
||||
<a name="id1148214"></a>
|
||||
<a href="filter.html#fusion.algorithms.transformation.metafunctions.filter.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="filter.html" title="filter"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">filter</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">T</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<a href="filter.html" title="filter"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">filter</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">T</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
<span class="bold"><strong>Return type</strong></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns a sequence containing
|
||||
the elements of <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
|
||||
that are of type <tt class="computeroutput"><span class="identifier">T</span></tt>. Equivalent
|
||||
to <tt class="computeroutput"><a href="filter_if.html" title="filter_if"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">filter_if</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span>
|
||||
<span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special"><</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">_</span><span class="special">,</span> <span class="identifier">T</span><span class="special">></span> <span class="special">>::</span><span class="identifier">type</span></tt>.
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns a sequence containing
|
||||
the elements of <code class="computeroutput"><span class="identifier">Sequence</span></code>
|
||||
that are of type <code class="computeroutput"><span class="identifier">T</span></code>. Equivalent
|
||||
to <code class="computeroutput"><a href="filter_if.html" title="filter_if"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">filter_if</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span>
|
||||
<span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special"><</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">_</span><span class="special">,</span> <span class="identifier">T</span><span class="special">></span> <span class="special">>::</span><span class="identifier">type</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.filter.complexity"></a><h6>
|
||||
<a name="id590677"></a>
|
||||
<a name="id1148439"></a>
|
||||
<a href="filter.html#fusion.algorithms.transformation.metafunctions.filter.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Constant.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.filter.header"></a><h6>
|
||||
<a name="id590709"></a>
|
||||
<a name="id1148446"></a>
|
||||
<a href="filter.html#fusion.algorithms.transformation.metafunctions.filter.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>filter_if</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../metafunctions.html" title="Metafunctions">
|
||||
<link rel="prev" href="filter.html" title="filter">
|
||||
@@ -26,15 +26,16 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.transformation.metafunctions.filter_if"></a><a href="filter_if.html" title="filter_if">filter_if</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.filter_if.description"></a><h6>
|
||||
<a name="id590837"></a>
|
||||
<a name="id1148580"></a>
|
||||
<a href="filter_if.html#fusion.algorithms.transformation.metafunctions.filter_if.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
Returns the result type of <a href="../functions/filter_if.html" title="filter_if"><tt class="computeroutput"><span class="identifier">filter_if</span></tt></a> given the sequence
|
||||
and unary MPL Lambda Expression predicate type.
|
||||
Returns the result type of <a href="../functions/filter_if.html" title="filter_if"><code class="computeroutput"><span class="identifier">filter_if</span></code></a> given the sequence
|
||||
and unary <a href="http://www.boost.org/libs/mpl/doc/refmanual/lambda-expression.html" target="_top">MPL
|
||||
Lambda Expression</a> predicate type.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.filter_if.synopsis"></a><h6>
|
||||
<a name="id590888"></a>
|
||||
<a name="id1148633"></a>
|
||||
<a href="filter_if.html#fusion.algorithms.transformation.metafunctions.filter_if.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -48,7 +49,7 @@
|
||||
<span class="special">};</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id591007"></a><p class="title"><b>Table 1.73. Parameter</b></p>
|
||||
<a name="id1148738"></a><p class="title"><b>Table 1.73. Parameter</b></p>
|
||||
<table class="table" summary="Parameter">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -62,7 +63,7 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">Sequence</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">Sequence</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
@@ -71,42 +72,44 @@
|
||||
<td>Operation's argument</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">Pred</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">Pred</span></code></td>
|
||||
<td>A
|
||||
unary MPL Lambda Expression</td>
|
||||
unary <a href="http://www.boost.org/libs/mpl/doc/refmanual/lambda-expression.html" target="_top">MPL
|
||||
Lambda Expression</a>
|
||||
</td>
|
||||
<td>Type to retain</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.filter_if.expression_semantics"></a><h6>
|
||||
<a name="id591103"></a>
|
||||
<a name="id1148829"></a>
|
||||
<a href="filter_if.html#fusion.algorithms.transformation.metafunctions.filter_if.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="filter_if.html" title="filter_if"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">filter_if</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">Pred</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<a href="filter_if.html" title="filter_if"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">filter_if</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">Pred</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
<span class="bold"><strong>Return type</strong></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns a sequence containing
|
||||
the elements of <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
|
||||
for which <tt class="computeroutput"><span class="identifier">Pred</span></tt> evaluates
|
||||
to <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">true_</span></tt>.
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns a sequence containing
|
||||
the elements of <code class="computeroutput"><span class="identifier">Sequence</span></code>
|
||||
for which <code class="computeroutput"><span class="identifier">Pred</span></code> evaluates
|
||||
to <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">true_</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.filter_if.complexity"></a><h6>
|
||||
<a name="id591279"></a>
|
||||
<a name="id1148984"></a>
|
||||
<a href="filter_if.html#fusion.algorithms.transformation.metafunctions.filter_if.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Constant.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.filter_if.header"></a><h6>
|
||||
<a name="id591311"></a>
|
||||
<a name="id1148991"></a>
|
||||
<a href="filter_if.html#fusion.algorithms.transformation.metafunctions.filter_if.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>insert</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../metafunctions.html" title="Metafunctions">
|
||||
<link rel="prev" href="erase_key.html" title="erase_key">
|
||||
@@ -26,15 +26,15 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.transformation.metafunctions.insert"></a><a href="insert.html" title="insert">insert</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.insert.description"></a><h6>
|
||||
<a name="id596887"></a>
|
||||
<a name="id1171434"></a>
|
||||
<a href="insert.html#fusion.algorithms.transformation.metafunctions.insert.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
Returns the result type of <a href="../functions/insert.html" title="insert"><tt class="computeroutput"><span class="identifier">insert</span></tt></a>, given the sequence,
|
||||
Returns the result type of <a href="../functions/insert.html" title="insert"><code class="computeroutput"><span class="identifier">insert</span></code></a>, given the sequence,
|
||||
position iterator and insertion types.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.insert.synopsis"></a><h6>
|
||||
<a name="id596937"></a>
|
||||
<a name="id1171478"></a>
|
||||
<a href="insert.html#fusion.algorithms.transformation.metafunctions.insert.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -49,7 +49,7 @@
|
||||
<span class="special">};</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id597073"></a><p class="title"><b>Table 1.83. Parameters</b></p>
|
||||
<a name="id1171597"></a><p class="title"><b>Table 1.83. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -63,7 +63,7 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">Sequence</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">Sequence</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
@@ -72,7 +72,7 @@
|
||||
<td>Operation's argument</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">Position</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">Position</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../iterators/concepts/forward_iterator.html" title="Forward
|
||||
Iterator">Forward
|
||||
@@ -81,7 +81,7 @@
|
||||
<td>Operation's argument</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">T</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">T</span></code></td>
|
||||
<td>Any
|
||||
type</td>
|
||||
<td>Operation's argument</td>
|
||||
@@ -90,33 +90,33 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.insert.expression_semantics"></a><h6>
|
||||
<a name="id597198"></a>
|
||||
<a name="id1171709"></a>
|
||||
<a href="insert.html#fusion.algorithms.transformation.metafunctions.insert.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="insert.html" title="insert"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">insert</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">Position</span><span class="special">,</span> <span class="identifier">T</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<a href="insert.html" title="insert"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">insert</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">Position</span><span class="special">,</span> <span class="identifier">T</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
<span class="bold"><strong>Return type</strong></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns a sequence with an
|
||||
element of type <tt class="computeroutput"><span class="identifier">T</span></tt> inserted
|
||||
at position <tt class="computeroutput"><span class="identifier">Position</span></tt>
|
||||
in <tt class="computeroutput"><span class="identifier">Sequence</span></tt>.
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns a sequence with an
|
||||
element of type <code class="computeroutput"><span class="identifier">T</span></code> inserted
|
||||
at position <code class="computeroutput"><span class="identifier">Position</span></code>
|
||||
in <code class="computeroutput"><span class="identifier">Sequence</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.insert.complexity"></a><h6>
|
||||
<a name="id597365"></a>
|
||||
<a name="id1171856"></a>
|
||||
<a href="insert.html#fusion.algorithms.transformation.metafunctions.insert.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Constant.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.insert.header"></a><h6>
|
||||
<a name="id597397"></a>
|
||||
<a name="id1171863"></a>
|
||||
<a href="insert.html#fusion.algorithms.transformation.metafunctions.insert.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>insert_range</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../metafunctions.html" title="Metafunctions">
|
||||
<link rel="prev" href="insert.html" title="insert">
|
||||
@@ -26,15 +26,15 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.transformation.metafunctions.insert_range"></a><a href="insert_range.html" title="insert_range">insert_range</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.insert_range.description"></a><h6>
|
||||
<a name="id597525"></a>
|
||||
<a name="id1171998"></a>
|
||||
<a href="insert_range.html#fusion.algorithms.transformation.metafunctions.insert_range.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
Returns the result type of <a href="../functions/insert_range.html" title="insert_range"><tt class="computeroutput"><span class="identifier">insert_range</span></tt></a>, given the input
|
||||
Returns the result type of <a href="../functions/insert_range.html" title="insert_range"><code class="computeroutput"><span class="identifier">insert_range</span></code></a>, given the input
|
||||
sequence, position iterator and insertion range types.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.insert_range.synopsis"></a><h6>
|
||||
<a name="id597576"></a>
|
||||
<a name="id1172044"></a>
|
||||
<a href="insert_range.html#fusion.algorithms.transformation.metafunctions.insert_range.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -49,7 +49,7 @@
|
||||
<span class="special">};</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id597712"></a><p class="title"><b>Table 1.84. Parameters</b></p>
|
||||
<a name="id1172164"></a><p class="title"><b>Table 1.84. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -63,7 +63,7 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">Sequence</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">Sequence</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
@@ -72,7 +72,7 @@
|
||||
<td>Operation's argument</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">Position</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">Position</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../iterators/concepts/forward_iterator.html" title="Forward
|
||||
Iterator">Forward
|
||||
@@ -81,7 +81,7 @@
|
||||
<td>Operation's argument</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">Range</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">Range</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
@@ -93,33 +93,33 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.insert_range.expression_semantics"></a><h6>
|
||||
<a name="id597847"></a>
|
||||
<a name="id1172282"></a>
|
||||
<a href="insert_range.html#fusion.algorithms.transformation.metafunctions.insert_range.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="insert_range.html" title="insert_range"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">insert_range</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">Position</span><span class="special">,</span> <span class="identifier">Range</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<a href="insert_range.html" title="insert_range"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">insert_range</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">Position</span><span class="special">,</span> <span class="identifier">Range</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
<span class="bold"><strong>Return type</strong></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns a sequence with the
|
||||
elements of <tt class="computeroutput"><span class="identifier">Range</span></tt> inserted
|
||||
at position <tt class="computeroutput"><span class="identifier">Position</span></tt>
|
||||
into <tt class="computeroutput"><span class="identifier">Sequence</span></tt>.
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns a sequence with the
|
||||
elements of <code class="computeroutput"><span class="identifier">Range</span></code> inserted
|
||||
at position <code class="computeroutput"><span class="identifier">Position</span></code>
|
||||
into <code class="computeroutput"><span class="identifier">Sequence</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.insert_range.complexity"></a><h6>
|
||||
<a name="id598015"></a>
|
||||
<a name="id1172431"></a>
|
||||
<a href="insert_range.html#fusion.algorithms.transformation.metafunctions.insert_range.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Constant.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.insert_range.header"></a><h6>
|
||||
<a name="id598047"></a>
|
||||
<a name="id1172461"></a>
|
||||
<a href="insert_range.html#fusion.algorithms.transformation.metafunctions.insert_range.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>join</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../metafunctions.html" title="Metafunctions">
|
||||
<link rel="prev" href="insert_range.html" title="insert_range">
|
||||
@@ -26,14 +26,14 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.transformation.metafunctions.join"></a><a href="join.html" title="join">join</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.join.description"></a><h6>
|
||||
<a name="id598176"></a>
|
||||
<a name="id1172572"></a>
|
||||
<a href="join.html#fusion.algorithms.transformation.metafunctions.join.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
Returns the result of joining 2 sequences, given the sequence types.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.join.synopsis"></a><h6>
|
||||
<a name="id598208"></a>
|
||||
<a name="id1172601"></a>
|
||||
<a href="join.html#fusion.algorithms.transformation.metafunctions.join.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -47,33 +47,33 @@
|
||||
<span class="special">};</span>
|
||||
</pre>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.join.expression_semantics"></a><h6>
|
||||
<a name="id598337"></a>
|
||||
<a name="id1172716"></a>
|
||||
<a href="join.html#fusion.algorithms.transformation.metafunctions.join.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="join.html" title="join"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">join</span></tt></a><span class="special"><</span><span class="identifier">LhSequence</span><span class="special">,</span> <span class="identifier">RhSequence</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<a href="join.html" title="join"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">join</span></code></a><span class="special"><</span><span class="identifier">LhSequence</span><span class="special">,</span> <span class="identifier">RhSequence</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
<span class="bold"><strong>Return type</strong></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns a sequence containing
|
||||
the elements of <tt class="computeroutput"><span class="identifier">LhSequence</span></tt>
|
||||
followed by the elements of <tt class="computeroutput"><span class="identifier">RhSequence</span></tt>.
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns a sequence containing
|
||||
the elements of <code class="computeroutput"><span class="identifier">LhSequence</span></code>
|
||||
followed by the elements of <code class="computeroutput"><span class="identifier">RhSequence</span></code>.
|
||||
The order of the elements in the 2 sequences is preserved.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.join.complexity"></a><h6>
|
||||
<a name="id598482"></a>
|
||||
<a name="id1172844"></a>
|
||||
<a href="join.html#fusion.algorithms.transformation.metafunctions.join.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Constant.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.join.header"></a><h6>
|
||||
<a name="id598514"></a>
|
||||
<a name="id1172872"></a>
|
||||
<a href="join.html#fusion.algorithms.transformation.metafunctions.join.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>pop_back</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../metafunctions.html" title="Metafunctions">
|
||||
<link rel="prev" href="zip.html" title="zip">
|
||||
@@ -26,15 +26,15 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.transformation.metafunctions.pop_back"></a><a href="pop_back.html" title="pop_back">pop_back</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.pop_back.description"></a><h6>
|
||||
<a name="id599291"></a>
|
||||
<a name="id1173562"></a>
|
||||
<a href="pop_back.html#fusion.algorithms.transformation.metafunctions.pop_back.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
Returns the result type of <a href="../functions/pop_back.html" title="pop_back"><tt class="computeroutput"><span class="identifier">pop_back</span></tt></a>, given the input sequence
|
||||
Returns the result type of <a href="../functions/pop_back.html" title="pop_back"><code class="computeroutput"><span class="identifier">pop_back</span></code></a>, given the input sequence
|
||||
type.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.pop_back.synopsis"></a><h6>
|
||||
<a name="id377456"></a>
|
||||
<a name="id1173608"></a>
|
||||
<a href="pop_back.html#fusion.algorithms.transformation.metafunctions.pop_back.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -47,7 +47,7 @@
|
||||
<span class="special">};</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id377547"></a><p class="title"><b>Table 1.85. Parameters</b></p>
|
||||
<a name="id1173689"></a><p class="title"><b>Table 1.85. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -60,7 +60,7 @@
|
||||
<th>Description</th>
|
||||
</tr></thead>
|
||||
<tbody><tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">Sequence</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">Sequence</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
@@ -71,32 +71,32 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.pop_back.expression_semantics"></a><h6>
|
||||
<a name="id379440"></a>
|
||||
<a name="id1173750"></a>
|
||||
<a href="pop_back.html#fusion.algorithms.transformation.metafunctions.pop_back.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="pop_back.html" title="pop_back"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">pop_back</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<a href="pop_back.html" title="pop_back"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">pop_back</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
<span class="bold"><strong>Return type</strong></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns a sequence with all
|
||||
the elements of <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns a sequence with all
|
||||
the elements of <code class="computeroutput"><span class="identifier">Sequence</span></code>
|
||||
except the last element.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.pop_back.complexity"></a><h6>
|
||||
<a name="id601047"></a>
|
||||
<a name="id1173849"></a>
|
||||
<a href="pop_back.html#fusion.algorithms.transformation.metafunctions.pop_back.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Constant.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.pop_back.header"></a><h6>
|
||||
<a name="id601074"></a>
|
||||
<a name="id1173856"></a>
|
||||
<a href="pop_back.html#fusion.algorithms.transformation.metafunctions.pop_back.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>pop_front</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../metafunctions.html" title="Metafunctions">
|
||||
<link rel="prev" href="pop_back.html" title="pop_back">
|
||||
@@ -26,15 +26,15 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.transformation.metafunctions.pop_front"></a><a href="pop_front.html" title="pop_front">pop_front</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.pop_front.description"></a><h6>
|
||||
<a name="id601188"></a>
|
||||
<a name="id1173976"></a>
|
||||
<a href="pop_front.html#fusion.algorithms.transformation.metafunctions.pop_front.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
Returns the result type of <a href="../functions/pop_front.html" title="pop_front"><tt class="computeroutput"><span class="identifier">pop_front</span></tt></a>, given the input sequence
|
||||
Returns the result type of <a href="../functions/pop_front.html" title="pop_front"><code class="computeroutput"><span class="identifier">pop_front</span></code></a>, given the input sequence
|
||||
type.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.pop_front.synopsis"></a><h6>
|
||||
<a name="id601232"></a>
|
||||
<a name="id1174017"></a>
|
||||
<a href="pop_front.html#fusion.algorithms.transformation.metafunctions.pop_front.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -47,7 +47,7 @@
|
||||
<span class="special">};</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id601323"></a><p class="title"><b>Table 1.86. Parameters</b></p>
|
||||
<a name="id1174098"></a><p class="title"><b>Table 1.86. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -60,7 +60,7 @@
|
||||
<th>Description</th>
|
||||
</tr></thead>
|
||||
<tbody><tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">Sequence</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">Sequence</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
@@ -71,32 +71,32 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.pop_front.expression_semantics"></a><h6>
|
||||
<a name="id601393"></a>
|
||||
<a name="id1174159"></a>
|
||||
<a href="pop_front.html#fusion.algorithms.transformation.metafunctions.pop_front.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="pop_front.html" title="pop_front"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">pop_front</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<a href="pop_front.html" title="pop_front"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">pop_front</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
<span class="bold"><strong>Return type</strong></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns a sequence with all
|
||||
the elements of <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns a sequence with all
|
||||
the elements of <code class="computeroutput"><span class="identifier">Sequence</span></code>
|
||||
except the first element.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.pop_front.complexity"></a><h6>
|
||||
<a name="id601504"></a>
|
||||
<a name="id1174258"></a>
|
||||
<a href="pop_front.html#fusion.algorithms.transformation.metafunctions.pop_front.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Constant.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.pop_front.header"></a><h6>
|
||||
<a name="id601532"></a>
|
||||
<a name="id1174265"></a>
|
||||
<a href="pop_front.html#fusion.algorithms.transformation.metafunctions.pop_front.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>push_back</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../metafunctions.html" title="Metafunctions">
|
||||
<link rel="prev" href="pop_front.html" title="pop_front">
|
||||
@@ -26,15 +26,15 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.transformation.metafunctions.push_back"></a><a href="push_back.html" title="push_back">push_back</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.push_back.description"></a><h6>
|
||||
<a name="id601646"></a>
|
||||
<a name="id1174385"></a>
|
||||
<a href="push_back.html#fusion.algorithms.transformation.metafunctions.push_back.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
Returns the result type of <a href="../functions/push_back.html" title="push_back"><tt class="computeroutput"><span class="identifier">push_back</span></tt></a>, given the types of
|
||||
Returns the result type of <a href="../functions/push_back.html" title="push_back"><code class="computeroutput"><span class="identifier">push_back</span></code></a>, given the types of
|
||||
the input sequence and element to push.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.push_back.synopsis"></a><h6>
|
||||
<a name="id601692"></a>
|
||||
<a name="id1174426"></a>
|
||||
<a href="push_back.html#fusion.algorithms.transformation.metafunctions.push_back.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -48,7 +48,7 @@
|
||||
<span class="special">};</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id601799"></a><p class="title"><b>Table 1.87. Parameters</b></p>
|
||||
<a name="id1174521"></a><p class="title"><b>Table 1.87. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -62,7 +62,7 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">Sequence</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">Sequence</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
@@ -71,7 +71,7 @@
|
||||
<td>Operation's argument</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">T</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">T</span></code></td>
|
||||
<td>Any
|
||||
type</td>
|
||||
<td>Operation's argument</td>
|
||||
@@ -80,33 +80,33 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.push_back.expression_semantics"></a><h6>
|
||||
<a name="id601888"></a>
|
||||
<a name="id1174600"></a>
|
||||
<a href="push_back.html#fusion.algorithms.transformation.metafunctions.push_back.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="push_back.html" title="push_back"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">push_back</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">T</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<a href="push_back.html" title="push_back"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">push_back</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">T</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
<span class="bold"><strong>Return type</strong></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns a sequence with the
|
||||
elements of <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
|
||||
and an element of type <tt class="computeroutput"><span class="identifier">T</span></tt>
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns a sequence with the
|
||||
elements of <code class="computeroutput"><span class="identifier">Sequence</span></code>
|
||||
and an element of type <code class="computeroutput"><span class="identifier">T</span></code>
|
||||
added to the end.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.push_back.complexity"></a><h6>
|
||||
<a name="id602018"></a>
|
||||
<a name="id1174716"></a>
|
||||
<a href="push_back.html#fusion.algorithms.transformation.metafunctions.push_back.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Constant.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.push_back.header"></a><h6>
|
||||
<a name="id602046"></a>
|
||||
<a name="id1174723"></a>
|
||||
<a href="push_back.html#fusion.algorithms.transformation.metafunctions.push_back.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>push_front</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../metafunctions.html" title="Metafunctions">
|
||||
<link rel="prev" href="push_back.html" title="push_back">
|
||||
@@ -26,15 +26,15 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.transformation.metafunctions.push_front"></a><a href="push_front.html" title="push_front">push_front</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.push_front.description"></a><h6>
|
||||
<a name="id602161"></a>
|
||||
<a name="id1174843"></a>
|
||||
<a href="push_front.html#fusion.algorithms.transformation.metafunctions.push_front.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
Returns the result type of <a href="../functions/push_front.html" title="push_front"><tt class="computeroutput"><span class="identifier">push_front</span></tt></a>, given the types
|
||||
Returns the result type of <a href="../functions/push_front.html" title="push_front"><code class="computeroutput"><span class="identifier">push_front</span></code></a>, given the types
|
||||
of the input sequence and element to push.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.push_front.synopsis"></a><h6>
|
||||
<a name="id602206"></a>
|
||||
<a name="id1174884"></a>
|
||||
<a href="push_front.html#fusion.algorithms.transformation.metafunctions.push_front.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -48,7 +48,7 @@
|
||||
<span class="special">};</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id602314"></a><p class="title"><b>Table 1.88. Parameters</b></p>
|
||||
<a name="id1174979"></a><p class="title"><b>Table 1.88. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -62,7 +62,7 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">Sequence</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">Sequence</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
@@ -71,7 +71,7 @@
|
||||
<td>Operation's argument</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">T</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">T</span></code></td>
|
||||
<td>Any
|
||||
type</td>
|
||||
<td>Operation's argument</td>
|
||||
@@ -80,33 +80,33 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.push_front.expression_semantics"></a><h6>
|
||||
<a name="id602403"></a>
|
||||
<a name="id1175057"></a>
|
||||
<a href="push_front.html#fusion.algorithms.transformation.metafunctions.push_front.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="push_front.html" title="push_front"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">push_front</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">T</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<a href="push_front.html" title="push_front"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">push_front</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">T</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
<span class="bold"><strong>Return type</strong></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns a sequence with the
|
||||
elements of <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
|
||||
and an element of type <tt class="computeroutput"><span class="identifier">T</span></tt>
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns a sequence with the
|
||||
elements of <code class="computeroutput"><span class="identifier">Sequence</span></code>
|
||||
and an element of type <code class="computeroutput"><span class="identifier">T</span></code>
|
||||
added to the beginning.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.push_front.complexity"></a><h6>
|
||||
<a name="id602533"></a>
|
||||
<a name="id1175174"></a>
|
||||
<a href="push_front.html#fusion.algorithms.transformation.metafunctions.push_front.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Constant.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.push_front.header"></a><h6>
|
||||
<a name="id602561"></a>
|
||||
<a name="id1175200"></a>
|
||||
<a href="push_front.html#fusion.algorithms.transformation.metafunctions.push_front.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>remove</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../metafunctions.html" title="Metafunctions">
|
||||
<link rel="prev" href="replace_if.html" title="replace_if">
|
||||
@@ -26,15 +26,15 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.transformation.metafunctions.remove"></a><a href="remove.html" title="remove">remove</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.remove.description"></a><h6>
|
||||
<a name="id593258"></a>
|
||||
<a name="id1150736"></a>
|
||||
<a href="remove.html#fusion.algorithms.transformation.metafunctions.remove.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
Returns the result type of <a href="../functions/remove.html" title="remove"><tt class="computeroutput"><span class="identifier">remove</span></tt></a>, given the sequence and
|
||||
Returns the result type of <a href="../functions/remove.html" title="remove"><code class="computeroutput"><span class="identifier">remove</span></code></a>, given the sequence and
|
||||
removal types.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.remove.synopsis"></a><h6>
|
||||
<a name="id593308"></a>
|
||||
<a name="id1150779"></a>
|
||||
<a href="remove.html#fusion.algorithms.transformation.metafunctions.remove.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -48,7 +48,7 @@
|
||||
<span class="special">};</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id593426"></a><p class="title"><b>Table 1.77. Parameters</b></p>
|
||||
<a name="id1150883"></a><p class="title"><b>Table 1.77. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -62,7 +62,7 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">Sequence</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">Sequence</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
@@ -71,7 +71,7 @@
|
||||
<td>Operation's argument</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">T</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">T</span></code></td>
|
||||
<td>Any
|
||||
type</td>
|
||||
<td>Remove elements of this type</td>
|
||||
@@ -80,34 +80,34 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.remove.expression_semantics"></a><h6>
|
||||
<a name="id593522"></a>
|
||||
<a name="id1150968"></a>
|
||||
<a href="remove.html#fusion.algorithms.transformation.metafunctions.remove.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="remove.html" title="remove"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">remove</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">T</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<a href="remove.html" title="remove"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">remove</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">T</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
<span class="bold"><strong>Return type</strong></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns a sequence containing
|
||||
the elements of <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
|
||||
not of type <tt class="computeroutput"><span class="identifier">T</span></tt>. Equivalent
|
||||
to <tt class="computeroutput"><a href="replace_if.html" title="replace_if"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">replace_if</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span>
|
||||
<span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special"><</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">_</span><span class="special">,</span> <span class="identifier">T</span><span class="special">></span> <span class="special">>::</span><span class="identifier">type</span></tt>.
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns a sequence containing
|
||||
the elements of <code class="computeroutput"><span class="identifier">Sequence</span></code>
|
||||
not of type <code class="computeroutput"><span class="identifier">T</span></code>. Equivalent
|
||||
to <code class="computeroutput"><a href="replace_if.html" title="replace_if"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">replace_if</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span>
|
||||
<span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special"><</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">_</span><span class="special">,</span> <span class="identifier">T</span><span class="special">></span> <span class="special">>::</span><span class="identifier">type</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.remove.complexity"></a><h6>
|
||||
<a name="id593777"></a>
|
||||
<a name="id1151193"></a>
|
||||
<a href="remove.html#fusion.algorithms.transformation.metafunctions.remove.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Constant.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.remove.header"></a><h6>
|
||||
<a name="id593809"></a>
|
||||
<a name="id1151200"></a>
|
||||
<a href="remove.html#fusion.algorithms.transformation.metafunctions.remove.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>remove_if</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../metafunctions.html" title="Metafunctions">
|
||||
<link rel="prev" href="remove.html" title="remove">
|
||||
@@ -26,15 +26,16 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.transformation.metafunctions.remove_if"></a><a href="remove_if.html" title="remove_if">remove_if</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.remove_if.description"></a><h6>
|
||||
<a name="id593937"></a>
|
||||
<a name="id1151334"></a>
|
||||
<a href="remove_if.html#fusion.algorithms.transformation.metafunctions.remove_if.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
Returns the result type of <a href="../functions/remove_if.html" title="remove_if"><tt class="computeroutput"><span class="identifier">remove_if</span></tt></a>, given the input sequence
|
||||
and unary MPL Lambda Expression predicate types.
|
||||
Returns the result type of <a href="../functions/remove_if.html" title="remove_if"><code class="computeroutput"><span class="identifier">remove_if</span></code></a>, given the input sequence
|
||||
and unary <a href="http://www.boost.org/libs/mpl/doc/refmanual/lambda-expression.html" target="_top">MPL
|
||||
Lambda Expression</a> predicate types.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.remove_if.synopsis"></a><h6>
|
||||
<a name="id593988"></a>
|
||||
<a name="id1151388"></a>
|
||||
<a href="remove_if.html#fusion.algorithms.transformation.metafunctions.remove_if.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -48,7 +49,7 @@
|
||||
<span class="special">};</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id594107"></a><p class="title"><b>Table 1.78. Parameters</b></p>
|
||||
<a name="id1151493"></a><p class="title"><b>Table 1.78. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -62,7 +63,7 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">Sequence</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">Sequence</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
@@ -71,44 +72,46 @@
|
||||
<td>Operation's argument</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">Pred</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">Pred</span></code></td>
|
||||
<td>A
|
||||
model of unary MPL Lambda Expression</td>
|
||||
<td>Remove elements
|
||||
which evaluate to <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">true_</span></tt>
|
||||
model of unary <a href="http://www.boost.org/libs/mpl/doc/refmanual/lambda-expression.html" target="_top">MPL
|
||||
Lambda Expression</a>
|
||||
</td>
|
||||
<td>Remove elements which evaluate
|
||||
to <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">true_</span></code>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.remove_if.expression_semantics"></a><h6>
|
||||
<a name="id594231"></a>
|
||||
<a name="id1151609"></a>
|
||||
<a href="remove_if.html#fusion.algorithms.transformation.metafunctions.remove_if.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="remove_if.html" title="remove_if"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">remove_if</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">Pred</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<a href="remove_if.html" title="remove_if"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">remove_if</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">Pred</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
<span class="bold"><strong>Return type</strong></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns a sequence containing
|
||||
the elements of <tt class="computeroutput"><span class="identifier">Sequence</span></tt>
|
||||
for which <tt class="computeroutput"><span class="identifier">Pred</span></tt> evaluates
|
||||
to <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">false_</span></tt>.
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns a sequence containing
|
||||
the elements of <code class="computeroutput"><span class="identifier">Sequence</span></code>
|
||||
for which <code class="computeroutput"><span class="identifier">Pred</span></code> evaluates
|
||||
to <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">false_</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.remove_if.complexity"></a><h6>
|
||||
<a name="id594407"></a>
|
||||
<a name="id1151764"></a>
|
||||
<a href="remove_if.html#fusion.algorithms.transformation.metafunctions.remove_if.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Constant.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.remove_if.header"></a><h6>
|
||||
<a name="id594439"></a>
|
||||
<a name="id1151772"></a>
|
||||
<a href="remove_if.html#fusion.algorithms.transformation.metafunctions.remove_if.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>replace</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../metafunctions.html" title="Metafunctions">
|
||||
<link rel="prev" href="transform.html" title="transform">
|
||||
@@ -26,15 +26,15 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.transformation.metafunctions.replace"></a><a href="replace.html" title="replace">replace</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.replace.description"></a><h6>
|
||||
<a name="id592066"></a>
|
||||
<a name="id1149681"></a>
|
||||
<a href="replace.html#fusion.algorithms.transformation.metafunctions.replace.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
Returns the result type of <a href="../functions/replace.html" title="replace"><tt class="computeroutput"><span class="identifier">replace</span></tt></a>, given the types of
|
||||
Returns the result type of <a href="../functions/replace.html" title="replace"><code class="computeroutput"><span class="identifier">replace</span></code></a>, given the types of
|
||||
the input sequence and element to replace.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.replace.synopsis"></a><h6>
|
||||
<a name="id592117"></a>
|
||||
<a name="id1149724"></a>
|
||||
<a href="replace.html#fusion.algorithms.transformation.metafunctions.replace.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -48,7 +48,7 @@
|
||||
<span class="special">};</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id592235"></a><p class="title"><b>Table 1.75. Parameters</b></p>
|
||||
<a name="id1149828"></a><p class="title"><b>Table 1.75. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -62,7 +62,7 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">Sequence</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">Sequence</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
@@ -71,7 +71,7 @@
|
||||
<td>Operation's argument</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">T</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">T</span></code></td>
|
||||
<td>Any
|
||||
type</td>
|
||||
<td>The type of the search and replacement objects</td>
|
||||
@@ -80,31 +80,31 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.replace.expression_semantics"></a><h6>
|
||||
<a name="id592331"></a>
|
||||
<a name="id1149914"></a>
|
||||
<a href="replace.html#fusion.algorithms.transformation.metafunctions.replace.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="replace.html" title="replace"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">replace</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span><span class="identifier">T</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<a href="replace.html" title="replace"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">replace</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span><span class="identifier">T</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
<span class="bold"><strong>Return type</strong></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns the return type of
|
||||
<a href="../functions/replace.html" title="replace"><tt class="computeroutput"><span class="identifier">replace</span></tt></a>.
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns the return type of
|
||||
<a href="../functions/replace.html" title="replace"><code class="computeroutput"><span class="identifier">replace</span></code></a>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.replace.complexity"></a><h6>
|
||||
<a name="id592470"></a>
|
||||
<a name="id1150038"></a>
|
||||
<a href="replace.html#fusion.algorithms.transformation.metafunctions.replace.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Constant.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.replace.header"></a><h6>
|
||||
<a name="id592502"></a>
|
||||
<a name="id1150045"></a>
|
||||
<a href="replace.html#fusion.algorithms.transformation.metafunctions.replace.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>replace_if</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../metafunctions.html" title="Metafunctions">
|
||||
<link rel="prev" href="replace.html" title="replace">
|
||||
@@ -26,17 +26,17 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.transformation.metafunctions.replace_if"></a><a href="replace_if.html" title="replace_if">replace_if</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.replace_if.description"></a><h6>
|
||||
<a name="id592630"></a>
|
||||
<a name="id1150179"></a>
|
||||
<a href="replace_if.html#fusion.algorithms.transformation.metafunctions.replace_if.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
Returns the result type of <a href="../functions/replace_if.html" title="replace_if"><tt class="computeroutput"><span class="identifier">replace_if</span></tt></a>, given the types
|
||||
of the sequence, <a href="../../concepts/poly.html" title=" Polymorphic Function
|
||||
Returns the result type of <a href="../functions/replace_if.html" title="replace_if"><code class="computeroutput"><span class="identifier">replace_if</span></code></a>, given the types
|
||||
of the sequence, <a href="../../../functional/concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic
|
||||
Function Object</a> predicate and replacement object.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.replace_if.synopsis"></a><h6>
|
||||
<a name="id592690"></a>
|
||||
<a name="id1150232"></a>
|
||||
<a href="replace_if.html#fusion.algorithms.transformation.metafunctions.replace_if.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -50,7 +50,7 @@
|
||||
<span class="special">};</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id592825"></a><p class="title"><b>Table 1.76. Parameters</b></p>
|
||||
<a name="id1150351"></a><p class="title"><b>Table 1.76. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -64,7 +64,7 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">Sequence</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">Sequence</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
@@ -73,16 +73,16 @@
|
||||
<td>Operation's argument</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">F</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">F</span></code></td>
|
||||
<td>A
|
||||
model of unary <a href="../../concepts/poly.html" title=" Polymorphic Function
|
||||
model of unary <a href="../../../functional/concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic
|
||||
Function Object</a>
|
||||
</td>
|
||||
<td>Replacement predicate</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">T</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">T</span></code></td>
|
||||
<td>Any
|
||||
type</td>
|
||||
<td>The type of the replacement object</td>
|
||||
@@ -91,31 +91,31 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.replace_if.expression_semantics"></a><h6>
|
||||
<a name="id592948"></a>
|
||||
<a name="id1150460"></a>
|
||||
<a href="replace_if.html#fusion.algorithms.transformation.metafunctions.replace_if.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="replace_if.html" title="replace_if"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">replace_if</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span><span class="identifier">F</span><span class="special">,</span><span class="identifier">T</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<a href="replace_if.html" title="replace_if"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">replace_if</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span><span class="identifier">F</span><span class="special">,</span><span class="identifier">T</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
<span class="bold"><strong>Return type</strong></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns the return type of
|
||||
<a href="../functions/replace_if.html" title="replace_if"><tt class="computeroutput"><span class="identifier">replace_if</span></tt></a>.
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns the return type of
|
||||
<a href="../functions/replace_if.html" title="replace_if"><code class="computeroutput"><span class="identifier">replace_if</span></code></a>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.replace_if.complexity"></a><h6>
|
||||
<a name="id593098"></a>
|
||||
<a name="id1150592"></a>
|
||||
<a href="replace_if.html#fusion.algorithms.transformation.metafunctions.replace_if.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Constant.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.replace_if.header"></a><h6>
|
||||
<a name="id593130"></a>
|
||||
<a name="id1150622"></a>
|
||||
<a href="replace_if.html#fusion.algorithms.transformation.metafunctions.replace_if.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>reverse</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../metafunctions.html" title="Metafunctions">
|
||||
<link rel="prev" href="remove_if.html" title="remove_if">
|
||||
@@ -26,15 +26,15 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.transformation.metafunctions.reverse"></a><a href="reverse.html" title="reverse">reverse</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.reverse.description"></a><h6>
|
||||
<a name="id594567"></a>
|
||||
<a name="id1151906"></a>
|
||||
<a href="reverse.html#fusion.algorithms.transformation.metafunctions.reverse.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
Returns the result type of <a href="../functions/reverse.html" title="reverse"><tt class="computeroutput"><span class="identifier">reverse</span></tt></a>, given the input sequence
|
||||
Returns the result type of <a href="../functions/reverse.html" title="reverse"><code class="computeroutput"><span class="identifier">reverse</span></code></a>, given the input sequence
|
||||
type.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.reverse.synopsis"></a><h6>
|
||||
<a name="id594616"></a>
|
||||
<a name="id1151949"></a>
|
||||
<a href="reverse.html#fusion.algorithms.transformation.metafunctions.reverse.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -47,7 +47,7 @@
|
||||
<span class="special">};</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id594717"></a><p class="title"><b>Table 1.79. Parameters</b></p>
|
||||
<a name="id1152038"></a><p class="title"><b>Table 1.79. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -60,7 +60,7 @@
|
||||
<th>Description</th>
|
||||
</tr></thead>
|
||||
<tbody><tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">Sequence</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">Sequence</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/bidirectional_sequence.html" title="Bidirectional
|
||||
Sequence">Bidirectional
|
||||
@@ -71,31 +71,31 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.reverse.expression_semantics"></a><h6>
|
||||
<a name="id594793"></a>
|
||||
<a name="id1152106"></a>
|
||||
<a href="reverse.html#fusion.algorithms.transformation.metafunctions.reverse.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="reverse.html" title="reverse"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">reverse</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<a href="reverse.html" title="reverse"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">reverse</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequences/concepts/bidirectional_sequence.html" title="Bidirectional
|
||||
<span class="bold"><strong>Return type</strong></span>: A model of <a href="../../../sequences/concepts/bidirectional_sequence.html" title="Bidirectional
|
||||
Sequence">Bidirectional
|
||||
Sequence</a>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns a sequence with the
|
||||
elements in the reverse order to <tt class="computeroutput"><span class="identifier">Sequence</span></tt>.
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns a sequence with the
|
||||
elements in the reverse order to <code class="computeroutput"><span class="identifier">Sequence</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.reverse.complexity"></a><h6>
|
||||
<a name="id594916"></a>
|
||||
<a name="id1152216"></a>
|
||||
<a href="reverse.html#fusion.algorithms.transformation.metafunctions.reverse.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Constant.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.reverse.header"></a><h6>
|
||||
<a name="id594948"></a>
|
||||
<a name="id1152224"></a>
|
||||
<a href="reverse.html#fusion.algorithms.transformation.metafunctions.reverse.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>transform</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../metafunctions.html" title="Metafunctions">
|
||||
<link rel="prev" href="filter_if.html" title="filter_if">
|
||||
@@ -26,17 +26,17 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.transformation.metafunctions.transform"></a><a href="transform.html" title="transform">transform</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.transform.description"></a><h6>
|
||||
<a name="id591439"></a>
|
||||
<a name="id1149125"></a>
|
||||
<a href="transform.html#fusion.algorithms.transformation.metafunctions.transform.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
Returns the result of type <a href="../functions/transform.html" title="transform"><tt class="computeroutput"><span class="identifier">transform</span></tt></a>, given the sequence
|
||||
and <a href="../../concepts/poly.html" title=" Polymorphic Function
|
||||
Returns the result of type <a href="../functions/transform.html" title="transform"><code class="computeroutput"><span class="identifier">transform</span></code></a>, given the sequence
|
||||
and <a href="../../../functional/concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic Function
|
||||
Object</a> types.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.transform.synopsis"></a><h6>
|
||||
<a name="id591499"></a>
|
||||
<a name="id1149179"></a>
|
||||
<a href="transform.html#fusion.algorithms.transformation.metafunctions.transform.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -50,7 +50,7 @@
|
||||
<span class="special">};</span>
|
||||
</pre>
|
||||
<div class="table">
|
||||
<a name="id591618"></a><p class="title"><b>Table 1.74. Parameters</b></p>
|
||||
<a name="id1149284"></a><p class="title"><b>Table 1.74. Parameters</b></p>
|
||||
<table class="table" summary="Parameters">
|
||||
<colgroup>
|
||||
<col>
|
||||
@@ -64,7 +64,7 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">Sequence</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">Sequence</span></code></td>
|
||||
<td>A
|
||||
model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
@@ -72,9 +72,9 @@
|
||||
<td>Operation's argument</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><tt class="computeroutput"><span class="identifier">F</span></tt></td>
|
||||
<td><code class="computeroutput"><span class="identifier">F</span></code></td>
|
||||
<td>A
|
||||
model of unary <a href="../../concepts/poly.html" title=" Polymorphic Function
|
||||
model of unary <a href="../../../functional/concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic
|
||||
Function Object</a>
|
||||
</td>
|
||||
@@ -84,31 +84,31 @@
|
||||
</table>
|
||||
</div>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.transform.expression_semantics"></a><h6>
|
||||
<a name="id591722"></a>
|
||||
<a name="id1149376"></a>
|
||||
<a href="transform.html#fusion.algorithms.transformation.metafunctions.transform.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="transform.html" title="transform"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">transform</span></tt></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">F</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<a href="transform.html" title="transform"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">transform</span></code></a><span class="special"><</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">F</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
<span class="bold"><strong>Return type</strong></span>: A model of <a href="../../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Returns a sequence with values
|
||||
<tt class="computeroutput"><span class="identifier">F</span><span class="special">::</span><span class="identifier">result</span><span class="special"><</span><span class="identifier">E</span><span class="special">>::</span><span class="identifier">type</span></tt> for each element type <tt class="computeroutput"><span class="identifier">E</span></tt> in <tt class="computeroutput"><span class="identifier">Sequence</span></tt>.
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns a sequence with values
|
||||
<code class="computeroutput"><span class="identifier">F</span><span class="special">::</span><span class="identifier">result</span><span class="special"><</span><span class="identifier">E</span><span class="special">>::</span><span class="identifier">type</span></code> for each element type <code class="computeroutput"><span class="identifier">E</span></code> in <code class="computeroutput"><span class="identifier">Sequence</span></code>.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.transform.complexity"></a><h6>
|
||||
<a name="id591907"></a>
|
||||
<a name="id1149539"></a>
|
||||
<a href="transform.html#fusion.algorithms.transformation.metafunctions.transform.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Constant.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.transform.header"></a><h6>
|
||||
<a name="id591939"></a>
|
||||
<a name="id1149546"></a>
|
||||
<a href="transform.html#fusion.algorithms.transformation.metafunctions.transform.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>zip</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../metafunctions.html" title="Metafunctions">
|
||||
<link rel="prev" href="join.html" title="join">
|
||||
@@ -26,7 +26,7 @@
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.algorithms.transformation.metafunctions.zip"></a><a href="zip.html" title="zip">zip</a></h5></div></div></div>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.zip.description"></a><h6>
|
||||
<a name="id598640"></a>
|
||||
<a name="id1172983"></a>
|
||||
<a href="zip.html#fusion.algorithms.transformation.metafunctions.zip.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
@@ -34,7 +34,7 @@
|
||||
of the members of the component sequences.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.zip.synopsis"></a><h6>
|
||||
<a name="id598674"></a>
|
||||
<a name="id1173013"></a>
|
||||
<a href="zip.html#fusion.algorithms.transformation.metafunctions.zip.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
@@ -50,37 +50,37 @@
|
||||
<span class="special">};</span>
|
||||
</pre>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.zip.expression_semantics"></a><h6>
|
||||
<a name="id598826"></a>
|
||||
<a name="id1173148"></a>
|
||||
<a href="zip.html#fusion.algorithms.transformation.metafunctions.zip.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="zip.html" title="zip"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">zip</span></tt></a><span class="special"><</span><span class="identifier">Sequence1</span><span class="special">,</span> <span class="identifier">Sequence2</span><span class="special">,</span> <span class="special">...</span> <span class="identifier">SequenceN</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<a href="zip.html" title="zip"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">zip</span></code></a><span class="special"><</span><span class="identifier">Sequence1</span><span class="special">,</span> <span class="identifier">Sequence2</span><span class="special">,</span> <span class="special">...</span> <span class="identifier">SequenceN</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><b>Return type</b></span>: A model of the most restrictive
|
||||
traversal category of sequences <tt class="computeroutput"><span class="identifier">Sequence1</span></tt>
|
||||
to <tt class="computeroutput"><span class="identifier">SequenceN</span></tt>.
|
||||
<span class="bold"><strong>Return type</strong></span>: A model of the most restrictive
|
||||
traversal category of sequences <code class="computeroutput"><span class="identifier">Sequence1</span></code>
|
||||
to <code class="computeroutput"><span class="identifier">SequenceN</span></code>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><b>Semantics</b></span>: Return a sequence containing
|
||||
<span class="bold"><strong>Semantics</strong></span>: Return a sequence containing
|
||||
tuples of elements from each sequence. For example, applying zip to tuples
|
||||
<tt class="computeroutput"><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></tt>
|
||||
and <tt class="computeroutput"><span class="special">(</span><span class="char">'a'</span><span class="special">,</span> <span class="char">'b'</span><span class="special">,</span>
|
||||
<span class="char">'c'</span><span class="special">)</span></tt>
|
||||
would return <tt class="computeroutput"><span class="special">((</span><span class="number">1</span><span class="special">,</span> <span class="char">'a'</span><span class="special">),(</span><span class="number">2</span><span class="special">,</span> <span class="char">'b'</span><span class="special">),(</span><span class="number">3</span><span class="special">,</span>
|
||||
<span class="char">'c'</span><span class="special">))</span></tt>
|
||||
<code class="computeroutput"><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></code>
|
||||
and <code class="computeroutput"><span class="special">(</span><span class="char">'a'</span><span class="special">,</span> <span class="char">'b'</span><span class="special">,</span>
|
||||
<span class="char">'c'</span><span class="special">)</span></code>
|
||||
would return <code class="computeroutput"><span class="special">((</span><span class="number">1</span><span class="special">,</span> <span class="char">'a'</span><span class="special">),(</span><span class="number">2</span><span class="special">,</span> <span class="char">'b'</span><span class="special">),(</span><span class="number">3</span><span class="special">,</span>
|
||||
<span class="char">'c'</span><span class="special">))</span></code>
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.zip.complexity"></a><h6>
|
||||
<a name="id599133"></a>
|
||||
<a name="id1173420"></a>
|
||||
<a href="zip.html#fusion.algorithms.transformation.metafunctions.zip.complexity">Complexity</a>
|
||||
</h6>
|
||||
<p>
|
||||
Constant.
|
||||
</p>
|
||||
<a name="fusion.algorithms.transformation.metafunctions.zip.header"></a><h6>
|
||||
<a name="id599165"></a>
|
||||
<a name="id1173448"></a>
|
||||
<a href="zip.html#fusion.algorithms.transformation.metafunctions.zip.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>Change log</title>
|
||||
<link rel="stylesheet" href="../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="prev" href="notes.html" title="Notes">
|
||||
@@ -30,11 +30,11 @@
|
||||
</p>
|
||||
<div class="itemizedlist"><ul type="disc">
|
||||
<li>
|
||||
Sep 27, 2006: Added <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">tuple</span></tt>
|
||||
Sep 27, 2006: Added <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">tuple</span></code>
|
||||
support.
|
||||
</li>
|
||||
<li>
|
||||
Nov 17, 2006: Added <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">variant</span></tt>
|
||||
Nov 17, 2006: Added <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">variant</span></code>
|
||||
support.
|
||||
</li>
|
||||
</ul></div>
|
||||
|
||||
@@ -3,11 +3,11 @@
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>Extension</title>
|
||||
<link rel="stylesheet" href="../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.66.1">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="prev" href="tuples/pairs.html" title="Pairs">
|
||||
<link rel="next" href="notes.html" title="Notes">
|
||||
<link rel="next" href="functional.html" title="Functional">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
||||
<table cellpadding="2" width="100%">
|
||||
@@ -20,15 +20,15 @@
|
||||
</table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="tuples/pairs.html"><img src="../images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../images/home.png" alt="Home"></a><a accesskey="n" href="notes.html"><img src="../images/next.png" alt="Next"></a>
|
||||
<a accesskey="p" href="tuples/pairs.html"><img src="../images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../images/home.png" alt="Home"></a><a accesskey="n" href="functional.html"><img src="../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
<div class="section" lang="en">
|
||||
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
|
||||
<a name="fusion.extension"></a><a href="extension.html" title="Extension">Extension</a></h2></div></div></div>
|
||||
<p>
|
||||
The Fusion library is designed to be extensible, new sequences types can easily
|
||||
be added. In fact, the library support for <tt class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span></tt>,
|
||||
<tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">array</span></tt> and <a href="http://www.boost.org/libs/mpl/index.html" target="_top">MPL</a>
|
||||
be added. In fact, the library support for <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span></code>,
|
||||
<code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">array</span></code> and <a href="http://www.boost.org/libs/mpl/index.html" target="_top">MPL</a>
|
||||
sequences is entirely provided using the extension mechanism.
|
||||
</p>
|
||||
<p>
|
||||
@@ -48,7 +48,7 @@
|
||||
</li>
|
||||
</ol></div>
|
||||
<a name="fusion.extension.our_example"></a><h3>
|
||||
<a name="id609634"></a>
|
||||
<a name="id1181263"></a>
|
||||
<a href="extension.html#fusion.extension.our_example">Our example</a>
|
||||
</h3>
|
||||
<p>
|
||||
@@ -73,14 +73,14 @@
|
||||
<p>
|
||||
We are going to pretend that this type has been provided by a 3rd party library,
|
||||
and therefore cannot be modified. We shall work through all the necessary steps
|
||||
to enable <tt class="computeroutput"><span class="identifier">example_struct</span></tt> to
|
||||
to enable <code class="computeroutput"><span class="identifier">example_struct</span></code> to
|
||||
serve as an <a href="sequences/concepts/associative_sequence.html" title="Associative
|
||||
Sequence">Associative
|
||||
Sequence</a> as described in the <a href="quick_start.html" title="Quick Start">Quick
|
||||
Start</a> guide.
|
||||
</p>
|
||||
<a name="fusion.extension.enabling_tag_dispatching"></a><h3>
|
||||
<a name="id609916"></a>
|
||||
<a name="id1181516"></a>
|
||||
<a href="extension.html#fusion.extension.enabling_tag_dispatching">Enabling Tag Dispatching</a>
|
||||
</h3>
|
||||
<p>
|
||||
@@ -95,9 +95,9 @@
|
||||
</span><span class="special">}</span>
|
||||
</pre>
|
||||
<p>
|
||||
Next we need to enable the <tt class="computeroutput"><span class="identifier">traits</span><span class="special">::</span><span class="identifier">tag_of</span></tt>
|
||||
Next we need to enable the <code class="computeroutput"><span class="identifier">traits</span><span class="special">::</span><span class="identifier">tag_of</span></code>
|
||||
metafunction to return our newly chosen tag type for operations involving our
|
||||
sequence. This is done by specializing <tt class="computeroutput"><span class="identifier">traits</span><span class="special">::</span><span class="identifier">tag_of</span></tt>
|
||||
sequence. This is done by specializing <code class="computeroutput"><span class="identifier">traits</span><span class="special">::</span><span class="identifier">tag_of</span></code>
|
||||
for our sequence type.
|
||||
</p>
|
||||
<pre class="programlisting">
|
||||
@@ -112,8 +112,8 @@
|
||||
<span class="special">}}}</span>
|
||||
</pre>
|
||||
<p>
|
||||
<tt class="computeroutput"><span class="identifier">traits</span><span class="special">::</span><span class="identifier">tag_of</span></tt> also has a second template argument,
|
||||
that can be used in conjuction with <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">enable_if</span></tt>
|
||||
<code class="computeroutput"><span class="identifier">traits</span><span class="special">::</span><span class="identifier">tag_of</span></code> also has a second template argument,
|
||||
that can be used in conjuction with <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">enable_if</span></code>
|
||||
to provide tag support for groups of related types. This feature is not necessary
|
||||
for our sequence, but for an example see the code in:
|
||||
</p>
|
||||
@@ -121,7 +121,7 @@
|
||||
<span class="preprocessor">#include</span> <span class="special"><</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">adapted</span><span class="special">/</span><span class="identifier">mpl</span><span class="special">/</span><span class="identifier">tag_of</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.extension.designing_a_suitable_iterator"></a><h3>
|
||||
<a name="id610409"></a>
|
||||
<a name="id1181956"></a>
|
||||
<a href="extension.html#fusion.extension.designing_a_suitable_iterator">Designing a
|
||||
suitable iterator</a>
|
||||
</h3>
|
||||
@@ -131,9 +131,9 @@
|
||||
access iterator in our example.
|
||||
</p>
|
||||
<p>
|
||||
We will use a simple design, in which the 2 members of <tt class="computeroutput"><span class="identifier">example_struct</span></tt>
|
||||
are given numbered indices, 0 for <tt class="computeroutput"><span class="identifier">name</span></tt>
|
||||
and 1 for <tt class="computeroutput"><span class="identifier">age</span></tt> respectively.
|
||||
We will use a simple design, in which the 2 members of <code class="computeroutput"><span class="identifier">example_struct</span></code>
|
||||
are given numbered indices, 0 for <code class="computeroutput"><span class="identifier">name</span></code>
|
||||
and 1 for <code class="computeroutput"><span class="identifier">age</span></code> respectively.
|
||||
</p>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">template</span><span class="special"><</span><span class="keyword">typename</span> <span class="identifier">Struct</span><span class="special">,</span> <span class="keyword">int</span> <span class="identifier">Pos</span><span class="special">></span>
|
||||
@@ -160,37 +160,37 @@
|
||||
of the current element.
|
||||
</li>
|
||||
<li>
|
||||
The typedefs <tt class="computeroutput"><span class="identifier">struct_type</span></tt>
|
||||
and <tt class="computeroutput"><span class="identifier">index</span></tt> provide convenient
|
||||
The typedefs <code class="computeroutput"><span class="identifier">struct_type</span></code>
|
||||
and <code class="computeroutput"><span class="identifier">index</span></code> provide convenient
|
||||
access to information we will need later in the implementation.
|
||||
</li>
|
||||
<li>
|
||||
The typedef <tt class="computeroutput"><span class="identifier">category</span></tt> allows
|
||||
the <tt class="computeroutput"><span class="identifier">traits</span><span class="special">::</span><a href="support/category_of.html" title="category_of"><tt class="computeroutput"><span class="identifier">category_of</span></tt></a></tt>
|
||||
The typedef <code class="computeroutput"><span class="identifier">category</span></code> allows
|
||||
the <code class="computeroutput"><span class="identifier">traits</span><span class="special">::</span><a href="support/category_of.html" title="category_of"><code class="computeroutput"><span class="identifier">category_of</span></code></a></code>
|
||||
metafunction to establish the traversal category of the iterator.
|
||||
</li>
|
||||
<li>
|
||||
The constructor stores a reference to the <tt class="computeroutput"><span class="identifier">example_struct</span></tt>
|
||||
The constructor stores a reference to the <code class="computeroutput"><span class="identifier">example_struct</span></code>
|
||||
being iterated over.
|
||||
</li>
|
||||
</ol></div>
|
||||
<p>
|
||||
We also need to enable <a href="notes.html#fusion.notes.tag_dispatching"><span class="emphasis"><em>tag
|
||||
dispatching</em></span></a> for our iterator type, with another specialization
|
||||
of <tt class="computeroutput"><span class="identifier">traits</span><span class="special">::</span><span class="identifier">tag_of</span></tt>.
|
||||
of <code class="computeroutput"><span class="identifier">traits</span><span class="special">::</span><span class="identifier">tag_of</span></code>.
|
||||
</p>
|
||||
<p>
|
||||
In isolation, the iterator implementation is pretty dry. Things should become
|
||||
clearer as we add features to our implementation.
|
||||
</p>
|
||||
<a name="fusion.extension.a_first_couple_of_instructive_features"></a><h3>
|
||||
<a name="id611044"></a>
|
||||
<a name="id1182523"></a>
|
||||
<a href="extension.html#fusion.extension.a_first_couple_of_instructive_features">A first
|
||||
couple of instructive features</a>
|
||||
</h3>
|
||||
<p>
|
||||
To start with, we will get the <a href="iterators/metafunctions/value_of.html" title="value_of"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">value_of</span></tt></a> metafunction working. To
|
||||
do this, we provide a specialization of the <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">fusion</span><span class="special">::</span><span class="identifier">extension</span><span class="special">::</span><span class="identifier">value_of_impl</span></tt>
|
||||
To start with, we will get the <a href="iterators/metafunctions/value_of.html" title="value_of"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">value_of</span></code></a> metafunction working. To
|
||||
do this, we provide a specialization of the <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">fusion</span><span class="special">::</span><span class="identifier">extension</span><span class="special">::</span><span class="identifier">value_of_impl</span></code>
|
||||
template for our iterator's tag type.
|
||||
</p>
|
||||
<pre class="programlisting">
|
||||
@@ -215,29 +215,30 @@
|
||||
</pre>
|
||||
<p>
|
||||
The implementation itself is pretty simple, it just uses 2 partial specializations
|
||||
to provide the type of the 2 different members of <tt class="computeroutput"><span class="identifier">example_struct</span></tt>,
|
||||
to provide the type of the 2 different members of <code class="computeroutput"><span class="identifier">example_struct</span></code>,
|
||||
based on the index of the iterator.
|
||||
</p>
|
||||
<p>
|
||||
To understand how <tt class="computeroutput"><span class="identifier">value_of_impl</span></tt>
|
||||
is used by the library we will look at the implementation of <a href="iterators/metafunctions/value_of.html" title="value_of"><tt class="computeroutput"><span class="identifier">value_of</span></tt></a>:
|
||||
To understand how <code class="computeroutput"><span class="identifier">value_of_impl</span></code>
|
||||
is used by the library we will look at the implementation of <a href="iterators/metafunctions/value_of.html" title="value_of"><code class="computeroutput"><span class="identifier">value_of</span></code></a>:
|
||||
</p>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">template</span> <span class="special"><</span><span class="keyword">typename</span> <span class="identifier">Iterator</span><span class="special">></span>
|
||||
<span class="keyword">struct</span> <a href="iterators/metafunctions/value_of.html" title="value_of"><tt class="computeroutput"><span class="identifier">value_of</span></tt></a>
|
||||
<span class="keyword">struct</span> <a href="iterators/metafunctions/value_of.html" title="value_of"><code class="computeroutput"><span class="identifier">value_of</span></code></a>
|
||||
<span class="special">:</span> <span class="identifier">extension</span><span class="special">::</span><span class="identifier">value_of_impl</span><span class="special"><</span><span class="keyword">typename</span> <span class="identifier">detail</span><span class="special">::</span><span class="identifier">tag_of</span><span class="special"><</span><span class="identifier">Iterator</span><span class="special">>::</span><span class="identifier">type</span><span class="special">>::</span>
|
||||
<span class="keyword">template</span> <span class="identifier">apply</span><span class="special"><</span><span class="identifier">Iterator</span><span class="special">></span>
|
||||
<span class="special">{};</span>
|
||||
</pre>
|
||||
<p>
|
||||
So <a href="iterators/metafunctions/value_of.html" title="value_of"><tt class="computeroutput"><span class="identifier">value_of</span></tt></a>
|
||||
So <a href="iterators/metafunctions/value_of.html" title="value_of"><code class="computeroutput"><span class="identifier">value_of</span></code></a>
|
||||
uses <a href="notes.html#fusion.notes.tag_dispatching"><span class="emphasis"><em>tag dispatching</em></span></a>
|
||||
to select an MPL Metafunction Class to provide its functionality. You will
|
||||
notice this pattern throughout the implementation of Fusion.
|
||||
to select an <a href="http://www.boost.org/libs/mpl/doc/refmanual/metafunction-class.html" target="_top">MPL
|
||||
Metafunction Class</a> to provide its functionality. You will notice this
|
||||
pattern throughout the implementation of Fusion.
|
||||
</p>
|
||||
<p>
|
||||
Ok, lets enable dereferencing of our iterator. In this case we must provide
|
||||
a suitable specialization of <tt class="computeroutput"><span class="identifier">deref_impl</span></tt>.
|
||||
a suitable specialization of <code class="computeroutput"><span class="identifier">deref_impl</span></code>.
|
||||
</p>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">template</span><span class="special"><></span>
|
||||
@@ -275,17 +276,17 @@
|
||||
<span class="special">}</span>
|
||||
</pre>
|
||||
<p>
|
||||
The use of <tt class="computeroutput"><span class="identifier">deref_impl</span></tt> is very
|
||||
similar to that of <tt class="computeroutput"><span class="identifier">value_of_impl</span></tt>,
|
||||
but it also provides some runtime functionality this time via the <tt class="computeroutput"><span class="identifier">call</span></tt> static member function. To see how
|
||||
<tt class="computeroutput"><span class="identifier">deref_impl</span></tt> is used, lets have
|
||||
a look at the implementation of <a href="iterators/functions/deref.html" title="deref"><tt class="computeroutput"><span class="identifier">deref</span></tt></a>:
|
||||
The use of <code class="computeroutput"><span class="identifier">deref_impl</span></code> is very
|
||||
similar to that of <code class="computeroutput"><span class="identifier">value_of_impl</span></code>,
|
||||
but it also provides some runtime functionality this time via the <code class="computeroutput"><span class="identifier">call</span></code> static member function. To see how
|
||||
<code class="computeroutput"><span class="identifier">deref_impl</span></code> is used, lets have
|
||||
a look at the implementation of <a href="iterators/functions/deref.html" title="deref"><code class="computeroutput"><span class="identifier">deref</span></code></a>:
|
||||
</p>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">namespace</span> <span class="identifier">result_of</span>
|
||||
<span class="special">{</span>
|
||||
<span class="keyword">template</span> <span class="special"><</span><span class="keyword">typename</span> <span class="identifier">Iterator</span><span class="special">></span>
|
||||
<span class="keyword">struct</span> <a href="iterators/functions/deref.html" title="deref"><tt class="computeroutput"><span class="identifier">deref</span></tt></a>
|
||||
<span class="keyword">struct</span> <a href="iterators/functions/deref.html" title="deref"><code class="computeroutput"><span class="identifier">deref</span></code></a>
|
||||
<span class="special">:</span> <span class="identifier">extension</span><span class="special">::</span><span class="identifier">deref_impl</span><span class="special"><</span><span class="keyword">typename</span> <span class="identifier">detail</span><span class="special">::</span><span class="identifier">tag_of</span><span class="special"><</span><span class="identifier">Iterator</span><span class="special">>::</span><span class="identifier">type</span><span class="special">>::</span>
|
||||
<span class="keyword">template</span> <span class="identifier">apply</span><span class="special"><</span><span class="identifier">Iterator</span><span class="special">></span>
|
||||
<span class="special">{};</span>
|
||||
@@ -293,24 +294,24 @@
|
||||
|
||||
<span class="keyword">template</span> <span class="special"><</span><span class="keyword">typename</span> <span class="identifier">Iterator</span><span class="special">></span>
|
||||
<span class="keyword">typename</span> <span class="identifier">result_of</span><span class="special">::</span><span class="identifier">deref</span><span class="special"><</span><span class="identifier">Iterator</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<a href="iterators/functions/deref.html" title="deref"><tt class="computeroutput"><span class="identifier">deref</span></tt></a><span class="special">(</span><span class="identifier">Iterator</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">i</span><span class="special">)</span>
|
||||
<a href="iterators/functions/deref.html" title="deref"><code class="computeroutput"><span class="identifier">deref</span></code></a><span class="special">(</span><span class="identifier">Iterator</span> <span class="keyword">const</span><span class="special">&</span> <span class="identifier">i</span><span class="special">)</span>
|
||||
<span class="special">{</span>
|
||||
<span class="keyword">typedef</span> <span class="identifier">result_of</span><span class="special">::</span><span class="identifier">deref</span><span class="special"><</span><span class="identifier">Iterator</span><span class="special">></span> <span class="identifier">deref_meta</span><span class="special">;</span>
|
||||
<span class="keyword">return</span> <span class="identifier">deref_meta</span><span class="special">::</span><span class="identifier">call</span><span class="special">(</span><span class="identifier">i</span><span class="special">);</span>
|
||||
<span class="special">}</span>
|
||||
</pre>
|
||||
<p>
|
||||
So again <a href="iterators/metafunctions/deref.html" title="deref"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">deref</span></tt></a> uses <a href="notes.html#fusion.notes.tag_dispatching"><span class="emphasis"><em>tag
|
||||
dispatching</em></span></a> in exactly the same way as the <a href="iterators/metafunctions/value_of.html" title="value_of"><tt class="computeroutput"><span class="identifier">value_of</span></tt></a> implementation. The runtime
|
||||
functionality used by <a href="iterators/functions/deref.html" title="deref"><tt class="computeroutput"><span class="identifier">deref</span></tt></a> is provided by the <tt class="computeroutput"><span class="identifier">call</span></tt> static function of the selected MPL
|
||||
Metafunction Class.
|
||||
So again <a href="iterators/metafunctions/deref.html" title="deref"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">deref</span></code></a> uses <a href="notes.html#fusion.notes.tag_dispatching"><span class="emphasis"><em>tag
|
||||
dispatching</em></span></a> in exactly the same way as the <a href="iterators/metafunctions/value_of.html" title="value_of"><code class="computeroutput"><span class="identifier">value_of</span></code></a> implementation. The runtime
|
||||
functionality used by <a href="iterators/functions/deref.html" title="deref"><code class="computeroutput"><span class="identifier">deref</span></code></a> is provided by the <code class="computeroutput"><span class="identifier">call</span></code> static function of the selected <a href="http://www.boost.org/libs/mpl/doc/refmanual/metafunction-class.html" target="_top">MPL
|
||||
Metafunction Class</a>.
|
||||
</p>
|
||||
<p>
|
||||
The actual implementation of <tt class="computeroutput"><span class="identifier">deref_impl</span></tt>
|
||||
is slightly more complex than that of <tt class="computeroutput"><span class="identifier">value_of_impl</span></tt>.
|
||||
We also need to implement the <tt class="computeroutput"><span class="identifier">call</span></tt>
|
||||
The actual implementation of <code class="computeroutput"><span class="identifier">deref_impl</span></code>
|
||||
is slightly more complex than that of <code class="computeroutput"><span class="identifier">value_of_impl</span></code>.
|
||||
We also need to implement the <code class="computeroutput"><span class="identifier">call</span></code>
|
||||
function, which returns a reference to the appropriate member of the underlying
|
||||
sequence. We also require a little bit of metaprogramming to return <tt class="computeroutput"><span class="keyword">const</span></tt> references if the underlying sequence
|
||||
sequence. We also require a little bit of metaprogramming to return <code class="computeroutput"><span class="keyword">const</span></code> references if the underlying sequence
|
||||
is const.
|
||||
</p>
|
||||
<div class="note"><table border="0" summary="Note">
|
||||
@@ -318,23 +319,23 @@
|
||||
<td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="../images/note.png"></td>
|
||||
<th align="left">Note</th>
|
||||
</tr>
|
||||
<tr><td colspan="2" align="left" valign="top"><p>
|
||||
<tr><td align="left" valign="top"><p>
|
||||
Although there is a fair amount of left to do to produce a fully fledged
|
||||
Fusion sequence, <a href="iterators/metafunctions/value_of.html" title="value_of"><tt class="computeroutput"><span class="identifier">value_of</span></tt></a> and <a href="iterators/functions/deref.html" title="deref"><tt class="computeroutput"><span class="identifier">deref</span></tt></a> illustrate all the signficant
|
||||
Fusion sequence, <a href="iterators/metafunctions/value_of.html" title="value_of"><code class="computeroutput"><span class="identifier">value_of</span></code></a> and <a href="iterators/functions/deref.html" title="deref"><code class="computeroutput"><span class="identifier">deref</span></code></a> illustrate all the signficant
|
||||
concepts required. The remainder of the process is very repetitive, simply
|
||||
requiring implementation of a suitable <tt class="computeroutput"><span class="identifier">xxxx_impl</span></tt>
|
||||
for each feature <tt class="computeroutput"><span class="identifier">xxxx</span></tt>.
|
||||
requiring implementation of a suitable <code class="computeroutput"><span class="identifier">xxxx_impl</span></code>
|
||||
for each feature <code class="computeroutput"><span class="identifier">xxxx</span></code>.
|
||||
</p></td></tr>
|
||||
</table></div>
|
||||
<a name="fusion.extension.implementing_the_remaining_iterator_functionality"></a><h3>
|
||||
<a name="id613285"></a>
|
||||
<a name="id1184528"></a>
|
||||
<a href="extension.html#fusion.extension.implementing_the_remaining_iterator_functionality">Implementing
|
||||
the remaining iterator functionality</a>
|
||||
</h3>
|
||||
<p>
|
||||
Ok, now we have seen the way <a href="iterators/metafunctions/value_of.html" title="value_of"><tt class="computeroutput"><span class="identifier">value_of</span></tt></a> and <a href="iterators/functions/deref.html" title="deref"><tt class="computeroutput"><span class="identifier">deref</span></tt></a> work, everything else will work
|
||||
Ok, now we have seen the way <a href="iterators/metafunctions/value_of.html" title="value_of"><code class="computeroutput"><span class="identifier">value_of</span></code></a> and <a href="iterators/functions/deref.html" title="deref"><code class="computeroutput"><span class="identifier">deref</span></code></a> work, everything else will work
|
||||
in pretty much the same way. Lets start with forward iteration, by providing
|
||||
a <tt class="computeroutput"><span class="identifier">next_impl</span></tt>:
|
||||
a <code class="computeroutput"><span class="identifier">next_impl</span></code>:
|
||||
</p>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">template</span><span class="special"><></span>
|
||||
@@ -356,40 +357,40 @@
|
||||
<span class="special">};</span>
|
||||
</pre>
|
||||
<p>
|
||||
This should be very familiar from our <tt class="computeroutput"><span class="identifier">deref_impl</span></tt>
|
||||
This should be very familiar from our <code class="computeroutput"><span class="identifier">deref_impl</span></code>
|
||||
implementation, we will be using this approach again and again now. Our design
|
||||
is simply to increment the <tt class="computeroutput"><span class="identifier">index</span></tt>
|
||||
is simply to increment the <code class="computeroutput"><span class="identifier">index</span></code>
|
||||
counter to move on to the next element. The various other iterator manipulations
|
||||
we need to perform will all just involve simple calculations with the <tt class="computeroutput"><span class="identifier">index</span></tt> variables.
|
||||
we need to perform will all just involve simple calculations with the <code class="computeroutput"><span class="identifier">index</span></code> variables.
|
||||
</p>
|
||||
<p>
|
||||
We also need to provide a suitable <tt class="computeroutput"><span class="identifier">equal_to_impl</span></tt>
|
||||
We also need to provide a suitable <code class="computeroutput"><span class="identifier">equal_to_impl</span></code>
|
||||
so that iterators can be correctly compared. A <a href="iterators/concepts/bidirectional_iterator.html" title="Bidirectional
|
||||
Iterator">Bidirectional
|
||||
Iterator</a> will also need an implementation of <tt class="computeroutput"><span class="identifier">prior_impl</span></tt>.
|
||||
Iterator</a> will also need an implementation of <code class="computeroutput"><span class="identifier">prior_impl</span></code>.
|
||||
For a <a href="iterators/concepts/random_access_iterator.html" title="Random
|
||||
Access Iterator">Random
|
||||
Access Iterator</a> <tt class="computeroutput"><span class="identifier">distance_impl</span></tt>
|
||||
and <tt class="computeroutput"><span class="identifier">advance_impl</span></tt> also need
|
||||
Access Iterator</a> <code class="computeroutput"><span class="identifier">distance_impl</span></code>
|
||||
and <code class="computeroutput"><span class="identifier">advance_impl</span></code> also need
|
||||
to be provided in order to satisfy the necessary complexity guarantees. As
|
||||
our iterator is a <a href="iterators/concepts/random_access_iterator.html" title="Random
|
||||
Access Iterator">Random
|
||||
Access Iterator</a> we will have to implement all of these functions.
|
||||
</p>
|
||||
<p>
|
||||
Full implementations of <tt class="computeroutput"><span class="identifier">prior_impl</span></tt>,
|
||||
<tt class="computeroutput"><span class="identifier">advance_impl</span></tt>, <tt class="computeroutput"><span class="identifier">distance_impl</span></tt> and <tt class="computeroutput"><span class="identifier">equal_to_impl</span></tt>
|
||||
Full implementations of <code class="computeroutput"><span class="identifier">prior_impl</span></code>,
|
||||
<code class="computeroutput"><span class="identifier">advance_impl</span></code>, <code class="computeroutput"><span class="identifier">distance_impl</span></code> and <code class="computeroutput"><span class="identifier">equal_to_impl</span></code>
|
||||
are provided in the example code.
|
||||
</p>
|
||||
<a name="fusion.extension.implementing_the_intrinsic_functions_of_the_sequence"></a><h3>
|
||||
<a name="id613911"></a>
|
||||
<a name="id1185084"></a>
|
||||
<a href="extension.html#fusion.extension.implementing_the_intrinsic_functions_of_the_sequence">Implementing
|
||||
the intrinsic functions of the sequence</a>
|
||||
</h3>
|
||||
<p>
|
||||
In order that Fusion can correctly identify our sequence as a Fusion sequence,
|
||||
we need to enable <tt class="computeroutput"><span class="identifier">is_sequence</span></tt>
|
||||
for our sequence type. As usual we just create an <tt class="computeroutput"><span class="identifier">impl</span></tt>
|
||||
we need to enable <code class="computeroutput"><span class="identifier">is_sequence</span></code>
|
||||
for our sequence type. As usual we just create an <code class="computeroutput"><span class="identifier">impl</span></code>
|
||||
type specialized for our sequence tag:
|
||||
</p>
|
||||
<pre class="programlisting">
|
||||
@@ -401,14 +402,14 @@
|
||||
<span class="special">};</span>
|
||||
</pre>
|
||||
<p>
|
||||
We've some similar formalities to complete, providing <tt class="computeroutput"><span class="identifier">category_of_impl</span></tt>
|
||||
so Fusion can correctly identify our sequence type, and <tt class="computeroutput"><span class="identifier">is_view_impl</span></tt>
|
||||
We've some similar formalities to complete, providing <code class="computeroutput"><span class="identifier">category_of_impl</span></code>
|
||||
so Fusion can correctly identify our sequence type, and <code class="computeroutput"><span class="identifier">is_view_impl</span></code>
|
||||
so Fusion can correctly identify our sequence as not being a <a href="sequences/views.html" title="Views">View</a>
|
||||
type. Implementations are provide in the example code.
|
||||
</p>
|
||||
<p>
|
||||
Now we've completed some formalities, on to more interesting features. Lets
|
||||
get <a href="sequences/intrinsics/functions/begin.html" title="begin"><tt class="computeroutput"><span class="identifier">begin</span></tt></a> working so that we can get an
|
||||
get <a href="sequences/intrinsics/functions/begin.html" title="begin"><code class="computeroutput"><span class="identifier">begin</span></code></a> working so that we can get an
|
||||
iterator to start accessing the data in our sequence.
|
||||
</p>
|
||||
<pre class="programlisting">
|
||||
@@ -431,32 +432,32 @@
|
||||
<p>
|
||||
The implementation uses the same ideas we have applied throughout, in this
|
||||
case we are just creating one of the iterators we developed earlier, pointing
|
||||
to the first element in the sequence. The implementation of <a href="sequences/intrinsics/functions/end.html" title="end"><tt class="computeroutput"><span class="identifier">end</span></tt></a> is very similar, and is provided
|
||||
to the first element in the sequence. The implementation of <a href="sequences/intrinsics/functions/end.html" title="end"><code class="computeroutput"><span class="identifier">end</span></code></a> is very similar, and is provided
|
||||
in the example code.
|
||||
</p>
|
||||
<p>
|
||||
For our <a href="sequences/concepts/random_access_sequence.html" title="Random
|
||||
Access Sequence">Random
|
||||
Access Sequence</a> we will also need to implement <tt class="computeroutput"><span class="identifier">size_impl</span></tt>,
|
||||
<tt class="computeroutput"><span class="identifier">value_at_impl</span></tt> and <tt class="computeroutput"><span class="identifier">at_impl</span></tt>.
|
||||
Access Sequence</a> we will also need to implement <code class="computeroutput"><span class="identifier">size_impl</span></code>,
|
||||
<code class="computeroutput"><span class="identifier">value_at_impl</span></code> and <code class="computeroutput"><span class="identifier">at_impl</span></code>.
|
||||
</p>
|
||||
<a name="fusion.extension.enabling_our_type_as_an_associative_container"></a><h3>
|
||||
<a name="id614499"></a>
|
||||
<a name="id1185603"></a>
|
||||
<a href="extension.html#fusion.extension.enabling_our_type_as_an_associative_container">Enabling
|
||||
our type as an associative container</a>
|
||||
</h3>
|
||||
<p>
|
||||
In order for <tt class="computeroutput"><span class="identifier">example_struct</span></tt>
|
||||
In order for <code class="computeroutput"><span class="identifier">example_struct</span></code>
|
||||
to serve as an associative container, we need to enable 3 lookup features,
|
||||
<a href="sequences/intrinsics/functions/at_key.html" title="at_key"><tt class="computeroutput"><span class="identifier">at_key</span></tt></a>, <a href="sequences/intrinsics/metafunctions/value_at_key.html" title="value_at_key"><tt class="computeroutput"><span class="identifier">value_at_key</span></tt></a> and <a href="sequences/intrinsics/functions/has_key.html" title="has_key"><tt class="computeroutput"><span class="identifier">has_key</span></tt></a>. We also need to provide an
|
||||
implementation of the <tt class="computeroutput"><span class="identifier">is_associative</span></tt>
|
||||
<a href="sequences/intrinsics/functions/at_key.html" title="at_key"><code class="computeroutput"><span class="identifier">at_key</span></code></a>, <a href="sequences/intrinsics/metafunctions/value_at_key.html" title="value_at_key"><code class="computeroutput"><span class="identifier">value_at_key</span></code></a> and <a href="sequences/intrinsics/functions/has_key.html" title="has_key"><code class="computeroutput"><span class="identifier">has_key</span></code></a>. We also need to provide an
|
||||
implementation of the <code class="computeroutput"><span class="identifier">is_associative</span></code>
|
||||
trait so that our sequence can be correctly identified as an associative container.
|
||||
</p>
|
||||
<p>
|
||||
To implement <tt class="computeroutput"><span class="identifier">at_key_impl</span></tt> we
|
||||
need to associate the <tt class="computeroutput"><span class="identifier">fields</span><span class="special">::</span><span class="identifier">age</span></tt> and
|
||||
<tt class="computeroutput"><span class="identifier">fields</span><span class="special">::</span><span class="identifier">age</span></tt> types described in the <a href="quick_start.html" title="Quick Start">Quick
|
||||
Start</a> guide with the appropriate members of <tt class="computeroutput"><span class="identifier">example_struct</span></tt>.
|
||||
To implement <code class="computeroutput"><span class="identifier">at_key_impl</span></code> we
|
||||
need to associate the <code class="computeroutput"><span class="identifier">fields</span><span class="special">::</span><span class="identifier">age</span></code> and
|
||||
<code class="computeroutput"><span class="identifier">fields</span><span class="special">::</span><span class="identifier">age</span></code> types described in the <a href="quick_start.html" title="Quick Start">Quick
|
||||
Start</a> guide with the appropriate members of <code class="computeroutput"><span class="identifier">example_struct</span></code>.
|
||||
Our implementation is as follows:
|
||||
</p>
|
||||
<pre class="programlisting">
|
||||
@@ -499,15 +500,15 @@
|
||||
</pre>
|
||||
<p>
|
||||
Its all very similar to the implementations we've seen previously, such as
|
||||
<tt class="computeroutput"><span class="identifier">deref_impl</span></tt> and <tt class="computeroutput"><span class="identifier">value_of_impl</span></tt>. Instead of identifying the
|
||||
members by index or position, we are now selecting them using the types <tt class="computeroutput"><span class="identifier">fields</span><span class="special">::</span><span class="identifier">name</span></tt> and <tt class="computeroutput"><span class="identifier">fields</span><span class="special">::</span><span class="identifier">age</span></tt>. The
|
||||
implementations of <tt class="computeroutput"><span class="identifier">value_at_key_impl</span></tt>
|
||||
and <tt class="computeroutput"><span class="identifier">has_key_impl</span></tt> are equally
|
||||
<code class="computeroutput"><span class="identifier">deref_impl</span></code> and <code class="computeroutput"><span class="identifier">value_of_impl</span></code>. Instead of identifying the
|
||||
members by index or position, we are now selecting them using the types <code class="computeroutput"><span class="identifier">fields</span><span class="special">::</span><span class="identifier">name</span></code> and <code class="computeroutput"><span class="identifier">fields</span><span class="special">::</span><span class="identifier">age</span></code>. The
|
||||
implementations of <code class="computeroutput"><span class="identifier">value_at_key_impl</span></code>
|
||||
and <code class="computeroutput"><span class="identifier">has_key_impl</span></code> are equally
|
||||
straightforward, and are provided in the example code, along with an implementation
|
||||
of <tt class="computeroutput"><span class="identifier">is_associative_impl</span></tt>.
|
||||
of <code class="computeroutput"><span class="identifier">is_associative_impl</span></code>.
|
||||
</p>
|
||||
<a name="fusion.extension.summary"></a><h3>
|
||||
<a name="id615481"></a>
|
||||
<a name="id1186467"></a>
|
||||
<a href="extension.html#fusion.extension.summary">Summary</a>
|
||||
</h3>
|
||||
<p>
|
||||
@@ -517,8 +518,8 @@
|
||||
pattern.
|
||||
</p>
|
||||
<p>
|
||||
The support for <tt class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span></tt>, <a href="http://www.boost.org/libs/mpl/index.html" target="_top">MPL</a>
|
||||
sequences, and <tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">array</span></tt> all use the same approach, and provide
|
||||
The support for <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span></code>, <a href="http://www.boost.org/libs/mpl/index.html" target="_top">MPL</a>
|
||||
sequences, and <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">array</span></code> all use the same approach, and provide
|
||||
additional examples of the approach for a variety of types.
|
||||
</p>
|
||||
</div>
|
||||
@@ -528,7 +529,7 @@
|
||||
</tr></table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="tuples/pairs.html"><img src="../images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../images/home.png" alt="Home"></a><a accesskey="n" href="notes.html"><img src="../images/next.png" alt="Next"></a>
|
||||
<a accesskey="p" href="tuples/pairs.html"><img src="../images/prev.png" alt="Prev"></a><a accesskey="u" href="../index.html"><img src="../images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../images/home.png" alt="Home"></a><a accesskey="n" href="functional.html"><img src="../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -0,0 +1,50 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title> Adapters</title>
|
||||
<link rel="stylesheet" href="../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../functional.html" title="Functional">
|
||||
<link rel="prev" href="invocation/metafunctions/invoke_function_object.html" title="invoke_function_object">
|
||||
<link rel="next" href="adapters/fused.html" title="fused">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
||||
<table cellpadding="2" width="100%">
|
||||
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
|
||||
<td align="center"><a href="../../../../../../index.htm">Home</a></td>
|
||||
<td align="center"><a href="../../../../../libraries.htm">Libraries</a></td>
|
||||
<td align="center"><a href="../../../../../../people/people.htm">People</a></td>
|
||||
<td align="center"><a href="../../../../../../more/faq.htm">FAQ</a></td>
|
||||
<td align="center"><a href="../../../../../../more/index.htm">More</a></td>
|
||||
</table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="invocation/metafunctions/invoke_function_object.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../functional.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="adapters/fused.html"><img src="../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
<div class="section" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="fusion.functional.adapters"></a><a href="adapters.html" title=" Adapters"> Adapters</a></h3></div></div></div>
|
||||
<div class="toc"><dl>
|
||||
<dt><span class="section"><a href="adapters/fused.html">fused</a></span></dt>
|
||||
<dt><span class="section"><a href="adapters/fused_procedure.html">fused_procedure</a></span></dt>
|
||||
<dt><span class="section"><a href="adapters/fused_function_object.html">fused_function_object</a></span></dt>
|
||||
<dt><span class="section"><a href="adapters/unfused_generic.html">unfused_generic</a></span></dt>
|
||||
<dt><span class="section"><a href="adapters/unfused_lvalue_args.html">unfused_lvalue_args</a></span></dt>
|
||||
<dt><span class="section"><a href="adapters/unfused_rvalue_args.html">unfused_rvalue_args</a></span></dt>
|
||||
<dt><span class="section"><a href="adapters/unfused_typed.html">unfused_typed</a></span></dt>
|
||||
</dl></div>
|
||||
<p>
|
||||
Function object templates to transform a particular target function.
|
||||
</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"><small>Copyright © 2001-2005 Joel de Guzman, Dan Marsden</small></td>
|
||||
</tr></table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="invocation/metafunctions/invoke_function_object.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../functional.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="adapters/fused.html"><img src="../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,203 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>fused</title>
|
||||
<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../adapters.html" title=" Adapters">
|
||||
<link rel="prev" href="../adapters.html" title=" Adapters">
|
||||
<link rel="next" href="fused_procedure.html" title="fused_procedure">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
||||
<table cellpadding="2" width="100%">
|
||||
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
|
||||
<td align="center"><a href="../../../../../../../index.htm">Home</a></td>
|
||||
<td align="center"><a href="../../../../../../libraries.htm">Libraries</a></td>
|
||||
<td align="center"><a href="../../../../../../../people/people.htm">People</a></td>
|
||||
<td align="center"><a href="../../../../../../../more/faq.htm">FAQ</a></td>
|
||||
<td align="center"><a href="../../../../../../../more/index.htm">More</a></td>
|
||||
</table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="../adapters.html"><img src="../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../adapters.html"><img src="../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../images/home.png" alt="Home"></a><a accesskey="n" href="fused_procedure.html"><img src="../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
<div class="section" lang="en">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="fusion.functional.adapters.fused"></a><a href="fused.html" title="fused">fused</a></h4></div></div></div>
|
||||
<a name="fusion.functional.adapters.fused.description"></a><h5>
|
||||
<a name="id1209486"></a>
|
||||
<a href="fused.html#fusion.functional.adapters.fused.description">Description</a>
|
||||
</h5>
|
||||
<p>
|
||||
An unary <a href="../concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic Function
|
||||
Object</a> adapter template for <a href="../concepts/def_callable.html" title=" Deferred
|
||||
Callable Object">Deferred
|
||||
Callable Object</a> target functions. It takes a <a href="../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a> that contains the arguments for the target function.
|
||||
</p>
|
||||
<p>
|
||||
The nested <code class="computeroutput"><span class="identifier">result</span></code> metafunction
|
||||
does not define a <code class="computeroutput"><span class="identifier">type</span></code>
|
||||
member for target functions of non-class type whose arity is not satisfied
|
||||
by the size of the sequence.
|
||||
</p>
|
||||
<p>
|
||||
The type of the target function is allowed to be const qualified or a reference.
|
||||
Const qualification is preserved and propagated appropriately (in other
|
||||
words, only const versions of <code class="literal">operator()</code> can be used
|
||||
for an target function object that is const or, if the target function
|
||||
object is held by value, the adapter is const - these semantics have nothing
|
||||
to do with the const qualification of a member function, which is referring
|
||||
to the type of object pointed to by <code class="literal">this</code>, which is specified
|
||||
with the first element in the sequence passed to the adapter).
|
||||
</p>
|
||||
<p>
|
||||
If the target function is a pointer to a class members, the corresponding
|
||||
object can be specified as a reference, pointer, or smart pointer. In case
|
||||
of the latter, a freestanding <code class="literal">get_pointer</code> function must
|
||||
be defined (Boost provides this function for <code class="literal">std::auto_ptr</code>
|
||||
and <a href="http://www.boost.org/libs/smart_ptr/smart_ptr.hpp" target="_top"><code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">shared_ptr</span></code></a>).
|
||||
</p>
|
||||
<a name="fusion.functional.adapters.fused.header"></a><h5>
|
||||
<a name="id1209629"></a>
|
||||
<a href="fused.html#fusion.functional.adapters.fused.header">Header</a>
|
||||
</h5>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">functional</span><span class="special">/</span><span class="identifier">adapter</span><span class="special">/</span><span class="identifier">fused</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.functional.adapters.fused.synopsis"></a><h5>
|
||||
<a name="id1209720"></a>
|
||||
<a href="fused.html#fusion.functional.adapters.fused.synopsis">Synopsis</a>
|
||||
</h5>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">template</span> <span class="special"><</span><span class="keyword">typename</span> <span class="identifier">Function</span><span class="special">></span>
|
||||
<span class="keyword">class</span> <span class="identifier">fused</span><span class="special">;</span>
|
||||
</pre>
|
||||
<a name="fusion.functional.adapters.fused.template_parameters"></a><h5>
|
||||
<a name="id1209789"></a>
|
||||
<a href="fused.html#fusion.functional.adapters.fused.template_parameters">Template
|
||||
parameters</a>
|
||||
</h5>
|
||||
<div class="informaltable"><table class="table">
|
||||
<colgroup>
|
||||
<col>
|
||||
<col>
|
||||
<col>
|
||||
</colgroup>
|
||||
<thead><tr>
|
||||
<th>Parameter</th>
|
||||
<th>Description</th>
|
||||
<th>Default</th>
|
||||
</tr></thead>
|
||||
<tbody><tr>
|
||||
<td><code class="computeroutput"><span class="identifier">Function</span></code></td>
|
||||
<td>A
|
||||
<a href="../concepts/def_callable.html" title=" Deferred
|
||||
Callable Object">Deferred
|
||||
Callable Object</a>
|
||||
</td>
|
||||
<td> </td>
|
||||
</tr></tbody>
|
||||
</table></div>
|
||||
<a name="fusion.functional.adapters.fused.model_of"></a><h5>
|
||||
<a name="id1209865"></a>
|
||||
<a href="fused.html#fusion.functional.adapters.fused.model_of">Model of</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul type="disc">
|
||||
<li><a href="../concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic Function
|
||||
Object</a></li>
|
||||
<li><a href="../concepts/def_callable.html" title=" Deferred
|
||||
Callable Object">Deferred Callable
|
||||
Object</a></li>
|
||||
</ul></div>
|
||||
<div class="variablelist">
|
||||
<p class="title"><b>Notation</b></p>
|
||||
<dl>
|
||||
<dt><span class="term"><code class="computeroutput"><span class="identifier">R</span></code></span></dt>
|
||||
<dd>
|
||||
A possibly const qualified <a href="../concepts/def_callable.html" title=" Deferred
|
||||
Callable Object">Deferred
|
||||
Callable Object</a> type or reference type thereof
|
||||
</dd>
|
||||
<dt><span class="term"><code class="computeroutput"><span class="identifier">r</span></code></span></dt>
|
||||
<dd>
|
||||
An object convertible to <code class="computeroutput"><span class="identifier">R</span></code>
|
||||
</dd>
|
||||
<dt><span class="term"><code class="computeroutput"><span class="identifier">s</span></code></span></dt>
|
||||
<dd>
|
||||
A <a href="../../sequences.html" title="Sequences">Sequence</a> of arguments that
|
||||
are accepted by <code class="computeroutput"><span class="identifier">r</span></code>
|
||||
</dd>
|
||||
<dt><span class="term"><code class="computeroutput"><span class="identifier">f</span></code></span></dt>
|
||||
<dd>
|
||||
An instance of <code class="computeroutput"><span class="identifier">fused</span><span class="special"><</span><span class="identifier">R</span><span class="special">></span></code>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<a name="fusion.functional.adapters.fused.expression_semantics"></a><h5>
|
||||
<a name="id1210037"></a>
|
||||
<a href="fused.html#fusion.functional.adapters.fused.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h5>
|
||||
<div class="informaltable"><table class="table">
|
||||
<colgroup>
|
||||
<col>
|
||||
<col>
|
||||
</colgroup>
|
||||
<thead><tr>
|
||||
<th>Expression</th>
|
||||
<th>Semantics</th>
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><code class="computeroutput"><span class="identifier">fused</span><span class="special"><</span><span class="identifier">R</span><span class="special">>(</span><span class="identifier">r</span><span class="special">)</span></code></td>
|
||||
<td>Creates
|
||||
a fused function as described above, initializes the target function
|
||||
with <code class="computeroutput"><span class="identifier">r</span></code>.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><code class="computeroutput"><span class="identifier">fused</span><span class="special"><</span><span class="identifier">R</span><span class="special">>()</span></code></td>
|
||||
<td>Creates
|
||||
a fused function as described above, attempts to use <code class="computeroutput"><span class="identifier">R</span></code>'s default constructor.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><code class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></code></td>
|
||||
<td>Calls
|
||||
<code class="computeroutput"><span class="identifier">r</span></code> with the elements
|
||||
in <code class="computeroutput"><span class="identifier">s</span></code> as its arguments.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table></div>
|
||||
<a name="fusion.functional.adapters.fused.example"></a><h5>
|
||||
<a name="id1210219"></a>
|
||||
<a href="fused.html#fusion.functional.adapters.fused.example">Example</a>
|
||||
</h5>
|
||||
<pre class="programlisting">
|
||||
<span class="identifier">fused</span><span class="special"><</span> <a href="http://www.sgi.com/tech/stl/plus.html" target="_top"><code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">plus</span></code></a><span class="special"><</span><span class="keyword">long</span><span class="special">></span> <span class="special">></span> <span class="identifier">f</span><span class="special">;</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><span class="identifier">f</span><span class="special">(</span><a href="../../sequences/generation/functions/make_vector.html" title="make_vector"><code class="computeroutput"><span class="identifier">make_vector</span></code></a><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">2l</span><span class="special">))</span> <span class="special">==</span> <span class="number">3l</span><span class="special">);</span>
|
||||
</pre>
|
||||
<a name="fusion.functional.adapters.fused.see_also"></a><h5>
|
||||
<a name="id1210375"></a>
|
||||
<a href="fused.html#fusion.functional.adapters.fused.see_also">See also</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul type="disc">
|
||||
<li><a href="fused_procedure.html" title="fused_procedure"><code class="computeroutput"><span class="identifier">fused_procedure</span></code></a></li>
|
||||
<li><a href="fused_function_object.html" title="fused_function_object"><code class="computeroutput"><span class="identifier">fused_function_object</span></code></a></li>
|
||||
<li><a href="../invocation/functions/invoke.html" title="invoke"><code class="computeroutput"><span class="identifier">invoke</span></code></a></li>
|
||||
<li><a href="../../support/deduce.html" title="deduce"><code class="computeroutput"><span class="identifier">deduce</span></code></a></li>
|
||||
</ul></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"><small>Copyright © 2001-2005 Joel de Guzman, Dan Marsden</small></td>
|
||||
</tr></table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="../adapters.html"><img src="../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../adapters.html"><img src="../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../images/home.png" alt="Home"></a><a accesskey="n" href="fused_procedure.html"><img src="../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,221 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>fused_function_object</title>
|
||||
<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../adapters.html" title=" Adapters">
|
||||
<link rel="prev" href="fused_procedure.html" title="fused_procedure">
|
||||
<link rel="next" href="unfused_generic.html" title="unfused_generic">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
||||
<table cellpadding="2" width="100%">
|
||||
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
|
||||
<td align="center"><a href="../../../../../../../index.htm">Home</a></td>
|
||||
<td align="center"><a href="../../../../../../libraries.htm">Libraries</a></td>
|
||||
<td align="center"><a href="../../../../../../../people/people.htm">People</a></td>
|
||||
<td align="center"><a href="../../../../../../../more/faq.htm">FAQ</a></td>
|
||||
<td align="center"><a href="../../../../../../../more/index.htm">More</a></td>
|
||||
</table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="fused_procedure.html"><img src="../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../adapters.html"><img src="../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../images/home.png" alt="Home"></a><a accesskey="n" href="unfused_generic.html"><img src="../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
<div class="section" lang="en">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="fusion.functional.adapters.fused_function_object"></a><a href="fused_function_object.html" title="fused_function_object">fused_function_object</a></h4></div></div></div>
|
||||
<a name="fusion.functional.adapters.fused_function_object.description"></a><h5>
|
||||
<a name="id1211879"></a>
|
||||
<a href="fused_function_object.html#fusion.functional.adapters.fused_function_object.description">Description</a>
|
||||
</h5>
|
||||
<p>
|
||||
An unary <a href="../concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic Function
|
||||
Object</a> adapter template for a <a href="../concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic
|
||||
Function Object</a> target function. It takes a <a href="../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a> that contains the arguments for the target function.
|
||||
</p>
|
||||
<p>
|
||||
The nested <code class="computeroutput"><span class="identifier">result</span></code> metafunction
|
||||
is inhertied from the target function.
|
||||
</p>
|
||||
<p>
|
||||
The type of the target function is allowed to be const qualified or a reference.
|
||||
Const qualification is preserved and propagated appropriately (in other
|
||||
words, only const versions of <code class="literal">operator()</code> can be used
|
||||
for an target function object that is const or, if the target function
|
||||
object is held by value, the adapter is const).
|
||||
</p>
|
||||
<a name="fusion.functional.adapters.fused_function_object.header"></a><h5>
|
||||
<a name="id1211961"></a>
|
||||
<a href="fused_function_object.html#fusion.functional.adapters.fused_function_object.header">Header</a>
|
||||
</h5>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">functional</span><span class="special">/</span><span class="identifier">adapter</span><span class="special">/</span><span class="identifier">fused_function_object</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.functional.adapters.fused_function_object.synopsis"></a><h5>
|
||||
<a name="id1212054"></a>
|
||||
<a href="fused_function_object.html#fusion.functional.adapters.fused_function_object.synopsis">Synopsis</a>
|
||||
</h5>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">template</span> <span class="special"><</span><span class="keyword">class</span> <span class="identifier">Function</span><span class="special">></span>
|
||||
<span class="keyword">class</span> <span class="identifier">fused_function_object</span><span class="special">;</span>
|
||||
</pre>
|
||||
<a name="fusion.functional.adapters.fused_function_object.template_parameters"></a><h5>
|
||||
<a name="id1212126"></a>
|
||||
<a href="fused_function_object.html#fusion.functional.adapters.fused_function_object.template_parameters">Template
|
||||
parameters</a>
|
||||
</h5>
|
||||
<div class="informaltable"><table class="table">
|
||||
<colgroup>
|
||||
<col>
|
||||
<col>
|
||||
<col>
|
||||
</colgroup>
|
||||
<thead><tr>
|
||||
<th>Parameter</th>
|
||||
<th>Description</th>
|
||||
<th>Default</th>
|
||||
</tr></thead>
|
||||
<tbody><tr>
|
||||
<td><code class="computeroutput"><span class="identifier">Function</span></code></td>
|
||||
<td>
|
||||
<a href="../concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic Function Object</a>
|
||||
type</td>
|
||||
<td> </td>
|
||||
</tr></tbody>
|
||||
</table></div>
|
||||
<a name="fusion.functional.adapters.fused_function_object.model_of"></a><h5>
|
||||
<a name="id1212201"></a>
|
||||
<a href="fused_function_object.html#fusion.functional.adapters.fused_function_object.model_of">Model
|
||||
of</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul type="disc">
|
||||
<li><a href="../concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic Function
|
||||
Object</a></li>
|
||||
<li><a href="../concepts/def_callable.html" title=" Deferred
|
||||
Callable Object">Deferred Callable
|
||||
Object</a></li>
|
||||
</ul></div>
|
||||
<div class="variablelist">
|
||||
<p class="title"><b>Notation</b></p>
|
||||
<dl>
|
||||
<dt><span class="term"><code class="computeroutput"><span class="identifier">R</span></code></span></dt>
|
||||
<dd>
|
||||
A possibly const qualified <a href="../concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic
|
||||
Function Object</a> type or reference type thereof
|
||||
</dd>
|
||||
<dt><span class="term"><code class="computeroutput"><span class="identifier">r</span></code></span></dt>
|
||||
<dd>
|
||||
An object convertible to <code class="computeroutput"><span class="identifier">R</span></code>
|
||||
</dd>
|
||||
<dt><span class="term"><code class="computeroutput"><span class="identifier">s</span></code></span></dt>
|
||||
<dd>
|
||||
A <a href="../../sequences.html" title="Sequences">Sequence</a> of arguments that
|
||||
are accepted by <code class="computeroutput"><span class="identifier">r</span></code>
|
||||
</dd>
|
||||
<dt><span class="term"><code class="computeroutput"><span class="identifier">f</span></code></span></dt>
|
||||
<dd>
|
||||
An instance of <code class="computeroutput"><span class="identifier">fused</span><span class="special"><</span><span class="identifier">R</span><span class="special">></span></code>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<a name="fusion.functional.adapters.fused_function_object.expression_semantics"></a><h5>
|
||||
<a name="id1212376"></a>
|
||||
<a href="fused_function_object.html#fusion.functional.adapters.fused_function_object.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h5>
|
||||
<div class="informaltable"><table class="table">
|
||||
<colgroup>
|
||||
<col>
|
||||
<col>
|
||||
</colgroup>
|
||||
<thead><tr>
|
||||
<th>Expression</th>
|
||||
<th>Semantics</th>
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><code class="computeroutput"><span class="identifier">fused_function_object</span><span class="special"><</span><span class="identifier">R</span><span class="special">>(</span><span class="identifier">r</span><span class="special">)</span></code></td>
|
||||
<td>Creates a fused function
|
||||
as described above, initializes the target function with <code class="computeroutput"><span class="identifier">r</span></code>.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><code class="computeroutput"><span class="identifier">fused_function_object</span><span class="special"><</span><span class="identifier">R</span><span class="special">>()</span></code></td>
|
||||
<td>Creates a fused
|
||||
function as described above, attempts to use <code class="computeroutput"><span class="identifier">R</span></code>'s
|
||||
default constructor.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><code class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></code></td>
|
||||
<td>Calls
|
||||
<code class="computeroutput"><span class="identifier">r</span></code> with the elements
|
||||
in <code class="computeroutput"><span class="identifier">s</span></code> as its arguments.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table></div>
|
||||
<a name="fusion.functional.adapters.fused_function_object.example"></a><h5>
|
||||
<a name="id1212559"></a>
|
||||
<a href="fused_function_object.html#fusion.functional.adapters.fused_function_object.example">Example</a>
|
||||
</h5>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">template</span><span class="special"><</span><span class="keyword">class</span> <span class="identifier">SeqOfSeqs</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Func</span><span class="special">></span>
|
||||
<span class="keyword">typename</span> <a href="../../algorithms/transformation/metafunctions/transform.html" title="transform"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">transform</span></code></a><span class="special"><</span> <span class="identifier">zip_view</span><span class="special"><</span><span class="identifier">SeqOfSeqs</span><span class="special">></span> <span class="keyword">const</span><span class="special">,</span>
|
||||
<span class="identifier">fused_function_object</span><span class="special"><</span><span class="identifier">Func</span> <span class="keyword">const</span> <span class="special">&></span> <span class="special">>::</span><span class="identifier">type</span>
|
||||
<span class="identifier">n_ary_transform</span><span class="special">(</span><span class="identifier">SeqOfSeqs</span> <span class="keyword">const</span> <span class="special">&</span> <span class="identifier">s</span><span class="special">,</span> <span class="identifier">Func</span> <span class="keyword">const</span> <span class="special">&</span> <span class="identifier">f</span><span class="special">)</span>
|
||||
<span class="special">{</span>
|
||||
<span class="keyword">return</span> <a href="../../algorithms/transformation/functions/transform.html" title="transform"><code class="computeroutput"><span class="identifier">transform</span></code></a><span class="special">(</span><span class="identifier">zip_view</span><span class="special"><</span><span class="identifier">SeqOfSeqs</span><span class="special">>(</span><span class="identifier">s</span><span class="special">),</span>
|
||||
<span class="identifier">fused_function_object</span><span class="special"><</span><span class="identifier">Func</span> <span class="keyword">const</span> <span class="special">&>(</span><span class="identifier">f</span><span class="special">));</span>
|
||||
<span class="special">}</span>
|
||||
|
||||
<span class="keyword">struct</span> <span class="identifier">sub</span>
|
||||
<span class="special">{</span>
|
||||
<span class="keyword">template</span><span class="special"><</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">_</span><span class="special">></span>
|
||||
<span class="keyword">struct</span> <span class="identifier">result</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">typename</span> <span class="identifier">T</span><span class="special">></span>
|
||||
<span class="identifier">T</span> <span class="keyword">operator</span><span class="special">()(</span><span class="identifier">T</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">T</span> <span class="identifier">rhs</span><span class="special">)</span> <span class="keyword">const</span>
|
||||
<span class="special">{</span>
|
||||
<span class="keyword">return</span> <span class="identifier">lhs</span> <span class="special">-</span> <span class="identifier">rhs</span><span class="special">;</span>
|
||||
<span class="special">}</span>
|
||||
<span class="special">};</span>
|
||||
|
||||
<span class="keyword">void</span> <span class="identifier">try_it</span><span class="special">()</span>
|
||||
<span class="special">{</span>
|
||||
<a href="../../sequences/containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special"><</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">float</span><span class="special">></span> <span class="identifier">a</span><span class="special">(</span><span class="number">2</span><span class="special">,</span><span class="number">2.0f</span><span class="special">);</span>
|
||||
<a href="../../sequences/containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special"><</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">float</span><span class="special">></span> <span class="identifier">b</span><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">1.5f</span><span class="special">);</span>
|
||||
<a href="../../sequences/containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special"><</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">float</span><span class="special">></span> <span class="identifier">c</span><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">0.5f</span><span class="special">);</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><span class="identifier">c</span> <span class="special">==</span> <span class="identifier">n_ary_transform</span><span class="special">(</span><a href="../../sequences/generation/functions/vector_tie.html" title="vector_tie"><code class="computeroutput"><span class="identifier">vector_tie</span></code></a><span class="special">(</span><span class="identifier">a</span><span class="special">,</span><span class="identifier">b</span><span class="special">),</span> <span class="identifier">sub</span><span class="special">()));</span>
|
||||
<span class="special">}</span>
|
||||
</pre>
|
||||
<a name="fusion.functional.adapters.fused_function_object.see_also"></a><h5>
|
||||
<a name="id1213389"></a>
|
||||
<a href="fused_function_object.html#fusion.functional.adapters.fused_function_object.see_also">See
|
||||
also</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul type="disc">
|
||||
<li><a href="fused.html" title="fused"><code class="computeroutput"><span class="identifier">fused</span></code></a></li>
|
||||
<li><a href="fused_procedure.html" title="fused_procedure"><code class="computeroutput"><span class="identifier">fused_procedure</span></code></a></li>
|
||||
<li><a href="../invocation/functions/invoke_function_object.html" title="invoke_function_object"><code class="computeroutput"><span class="identifier">invoke_function_object</span></code></a></li>
|
||||
<li><a href="../../support/deduce.html" title="deduce"><code class="computeroutput"><span class="identifier">deduce</span></code></a></li>
|
||||
</ul></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"><small>Copyright © 2001-2005 Joel de Guzman, Dan Marsden</small></td>
|
||||
</tr></table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="fused_procedure.html"><img src="../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../adapters.html"><img src="../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../images/home.png" alt="Home"></a><a accesskey="n" href="unfused_generic.html"><img src="../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,219 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>fused_procedure</title>
|
||||
<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../adapters.html" title=" Adapters">
|
||||
<link rel="prev" href="fused.html" title="fused">
|
||||
<link rel="next" href="fused_function_object.html" title="fused_function_object">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
||||
<table cellpadding="2" width="100%">
|
||||
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
|
||||
<td align="center"><a href="../../../../../../../index.htm">Home</a></td>
|
||||
<td align="center"><a href="../../../../../../libraries.htm">Libraries</a></td>
|
||||
<td align="center"><a href="../../../../../../../people/people.htm">People</a></td>
|
||||
<td align="center"><a href="../../../../../../../more/faq.htm">FAQ</a></td>
|
||||
<td align="center"><a href="../../../../../../../more/index.htm">More</a></td>
|
||||
</table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="fused.html"><img src="../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../adapters.html"><img src="../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../images/home.png" alt="Home"></a><a accesskey="n" href="fused_function_object.html"><img src="../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
<div class="section" lang="en">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="fusion.functional.adapters.fused_procedure"></a><a href="fused_procedure.html" title="fused_procedure">fused_procedure</a></h4></div></div></div>
|
||||
<a name="fusion.functional.adapters.fused_procedure.description"></a><h5>
|
||||
<a name="id1210487"></a>
|
||||
<a href="fused_procedure.html#fusion.functional.adapters.fused_procedure.description">Description</a>
|
||||
</h5>
|
||||
<p>
|
||||
An unary <a href="../concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic Function
|
||||
Object</a> adapter template for <a href="../concepts/callable.html" title=" Callable Object">Callable
|
||||
Object</a> target functions. It takes a <a href="../../sequences/concepts/forward_sequence.html" title="Forward
|
||||
Sequence">Forward
|
||||
Sequence</a> that contains the arguments for the target function.
|
||||
</p>
|
||||
<p>
|
||||
The result is discared and the adapter's return type is <code class="computeroutput"><span class="keyword">void</span></code>.
|
||||
The nested <code class="computeroutput"><span class="identifier">result</span></code> metafunction
|
||||
does not define a <code class="computeroutput"><span class="identifier">type</span></code>
|
||||
member for target functions of non-class type whose arity is not satisfied
|
||||
by the size of the sequence.
|
||||
</p>
|
||||
<p>
|
||||
The type of the target function is allowed to be const qualified or a reference.
|
||||
Const qualification is preserved and propagated appropriately (in other
|
||||
words, only const versions of <code class="literal">operator()</code> can be used
|
||||
for an target function object that is const or, if the target function
|
||||
object is held by value, the adapter is const - these semantics have nothing
|
||||
to do with the const qualification of a member function, which is referring
|
||||
to the type of object pointed to by <code class="literal">this</code>, which is specified
|
||||
with the first element in the sequence passed to the adapter).
|
||||
</p>
|
||||
<p>
|
||||
If the target function is a pointer to a members function, the corresponding
|
||||
object can be specified as a reference, pointer, or smart pointer. In case
|
||||
of the latter, a freestanding <code class="literal">get_pointer</code> function must
|
||||
be defined (Boost provides this function for <code class="literal">std::auto_ptr</code>
|
||||
and <a href="http://www.boost.org/libs/smart_ptr/smart_ptr.hpp" target="_top"><code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">shared_ptr</span></code></a>).
|
||||
</p>
|
||||
<p>
|
||||
The target function must not be a pointer to a member object (dereferencing
|
||||
such a pointer without returning anything does not make sense, so it isn't
|
||||
implemented).
|
||||
</p>
|
||||
<a name="fusion.functional.adapters.fused_procedure.header"></a><h5>
|
||||
<a name="id1210648"></a>
|
||||
<a href="fused_procedure.html#fusion.functional.adapters.fused_procedure.header">Header</a>
|
||||
</h5>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">functional</span><span class="special">/</span><span class="identifier">adapter</span><span class="special">/</span><span class="identifier">fused_procedure</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.functional.adapters.fused_procedure.synopsis"></a><h5>
|
||||
<a name="id1210740"></a>
|
||||
<a href="fused_procedure.html#fusion.functional.adapters.fused_procedure.synopsis">Synopsis</a>
|
||||
</h5>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">template</span> <span class="special"><</span><span class="keyword">typename</span> <span class="identifier">Function</span><span class="special">></span>
|
||||
<span class="keyword">class</span> <span class="identifier">fused_procedure</span><span class="special">;</span>
|
||||
</pre>
|
||||
<a name="fusion.functional.adapters.fused_procedure.template_parameters"></a><h5>
|
||||
<a name="id1210809"></a>
|
||||
<a href="fused_procedure.html#fusion.functional.adapters.fused_procedure.template_parameters">Template
|
||||
parameters</a>
|
||||
</h5>
|
||||
<div class="informaltable"><table class="table">
|
||||
<colgroup>
|
||||
<col>
|
||||
<col>
|
||||
<col>
|
||||
</colgroup>
|
||||
<thead><tr>
|
||||
<th>Parameter</th>
|
||||
<th>Description</th>
|
||||
<th>Default</th>
|
||||
</tr></thead>
|
||||
<tbody><tr>
|
||||
<td><code class="computeroutput"><span class="identifier">Function</span></code></td>
|
||||
<td>
|
||||
<a href="../concepts/callable.html" title=" Callable Object">Callable Object</a>
|
||||
type</td>
|
||||
<td> </td>
|
||||
</tr></tbody>
|
||||
</table></div>
|
||||
<a name="fusion.functional.adapters.fused_procedure.model_of"></a><h5>
|
||||
<a name="id1210884"></a>
|
||||
<a href="fused_procedure.html#fusion.functional.adapters.fused_procedure.model_of">Model
|
||||
of</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul type="disc">
|
||||
<li><a href="../concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic Function
|
||||
Object</a></li>
|
||||
<li><a href="../concepts/def_callable.html" title=" Deferred
|
||||
Callable Object">Deferred Callable
|
||||
Object</a></li>
|
||||
</ul></div>
|
||||
<div class="variablelist">
|
||||
<p class="title"><b>Notation</b></p>
|
||||
<dl>
|
||||
<dt><span class="term"><code class="computeroutput"><span class="identifier">R</span></code></span></dt>
|
||||
<dd>
|
||||
A possibly const qualified <a href="../concepts/callable.html" title=" Callable Object">Callable
|
||||
Object</a> type or reference type thereof
|
||||
</dd>
|
||||
<dt><span class="term"><code class="computeroutput"><span class="identifier">r</span></code></span></dt>
|
||||
<dd>
|
||||
An object convertible to <code class="computeroutput"><span class="identifier">R</span></code>
|
||||
</dd>
|
||||
<dt><span class="term"><code class="computeroutput"><span class="identifier">s</span></code></span></dt>
|
||||
<dd>
|
||||
A <a href="../../sequences.html" title="Sequences">Sequence</a> of arguments that
|
||||
are accepted by <code class="computeroutput"><span class="identifier">r</span></code>
|
||||
</dd>
|
||||
<dt><span class="term"><code class="computeroutput"><span class="identifier">f</span></code></span></dt>
|
||||
<dd>
|
||||
An instance of <code class="computeroutput"><span class="identifier">fused</span><span class="special"><</span><span class="identifier">R</span><span class="special">></span></code>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<a name="fusion.functional.adapters.fused_procedure.expression_semantics"></a><h5>
|
||||
<a name="id1211058"></a>
|
||||
<a href="fused_procedure.html#fusion.functional.adapters.fused_procedure.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h5>
|
||||
<div class="informaltable"><table class="table">
|
||||
<colgroup>
|
||||
<col>
|
||||
<col>
|
||||
</colgroup>
|
||||
<thead><tr>
|
||||
<th>Expression</th>
|
||||
<th>Semantics</th>
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><code class="computeroutput"><span class="identifier">fused_procedure</span><span class="special"><</span><span class="identifier">R</span><span class="special">>(</span><span class="identifier">r</span><span class="special">)</span></code></td>
|
||||
<td>Creates a fused function
|
||||
as described above, initializes the target function with <code class="computeroutput"><span class="identifier">r</span></code>.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><code class="computeroutput"><span class="identifier">fused_procedure</span><span class="special"><</span><span class="identifier">R</span><span class="special">>()</span></code></td>
|
||||
<td>Creates a fused
|
||||
function as described above, attempts to use <code class="computeroutput"><span class="identifier">R</span></code>'s
|
||||
default constructor.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><code class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></code></td>
|
||||
<td>Calls
|
||||
<code class="computeroutput"><span class="identifier">r</span></code> with the elements
|
||||
in <code class="computeroutput"><span class="identifier">s</span></code> as its arguments.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table></div>
|
||||
<a name="fusion.functional.adapters.fused_procedure.example"></a><h5>
|
||||
<a name="id1211241"></a>
|
||||
<a href="fused_procedure.html#fusion.functional.adapters.fused_procedure.example">Example</a>
|
||||
</h5>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">template</span><span class="special"><</span><span class="keyword">class</span> <span class="identifier">SequenceOfSequences</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Func</span><span class="special">></span>
|
||||
<span class="keyword">void</span> <span class="identifier">n_ary_for_each</span><span class="special">(</span><span class="identifier">SequenceOfSequences</span> <span class="keyword">const</span> <span class="special">&</span> <span class="identifier">s</span><span class="special">,</span> <span class="identifier">Func</span> <span class="keyword">const</span> <span class="special">&</span> <span class="identifier">f</span><span class="special">)</span>
|
||||
<span class="special">{</span>
|
||||
<a href="../../algorithms/iteration/functions/for_each.html" title="for_each"><code class="computeroutput"><span class="identifier">for_each</span></code></a><span class="special">(</span><a href="../../sequences/views/zip_view.html" title="zip_view"><code class="computeroutput"><span class="identifier">zip_view</span></code></a><span class="special"><</span><span class="identifier">SequenceOfSequences</span><span class="special">>(</span><span class="identifier">s</span><span class="special">),</span>
|
||||
<span class="identifier">fused_procedure</span><span class="special"><</span><span class="identifier">Func</span> <span class="keyword">const</span> <span class="special">&>(</span><span class="identifier">f</span><span class="special">));</span>
|
||||
<span class="special">}</span>
|
||||
|
||||
<span class="keyword">void</span> <span class="identifier">try_it</span><span class="special">()</span>
|
||||
<span class="special">{</span>
|
||||
<a href="../../sequences/containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special"><</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">float</span><span class="special">></span> <span class="identifier">a</span><span class="special">(</span><span class="number">2</span><span class="special">,</span><span class="number">2.0f</span><span class="special">);</span>
|
||||
<a href="../../sequences/containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special"><</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">float</span><span class="special">></span> <span class="identifier">b</span><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">1.5f</span><span class="special">);</span>
|
||||
<span class="keyword">using</span> <span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">lambda</span><span class="special">;</span>
|
||||
<span class="identifier">n_ary_for_each</span><span class="special">(</span><a href="../../sequences/generation/functions/vector_tie.html" title="vector_tie"><code class="computeroutput"><span class="identifier">vector_tie</span></code></a><span class="special">(</span><span class="identifier">a</span><span class="special">,</span><span class="identifier">b</span><span class="special">),</span> <span class="identifier">_1</span> <span class="special">-=</span> <span class="identifier">_2</span><span class="special">);</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><span class="identifier">a</span> <span class="special">==</span> <a href="../../sequences/generation/functions/make_vector.html" title="make_vector"><code class="computeroutput"><span class="identifier">make_vector</span></code></a><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">0.5f</span><span class="special">));</span>
|
||||
<span class="special">}</span>
|
||||
</pre>
|
||||
<a name="fusion.functional.adapters.fused_procedure.see_also"></a><h5>
|
||||
<a name="id1211780"></a>
|
||||
<a href="fused_procedure.html#fusion.functional.adapters.fused_procedure.see_also">See
|
||||
also</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul type="disc">
|
||||
<li><a href="fused.html" title="fused"><code class="computeroutput"><span class="identifier">fused</span></code></a></li>
|
||||
<li><a href="fused_function_object.html" title="fused_function_object"><code class="computeroutput"><span class="identifier">fused_function_object</span></code></a></li>
|
||||
<li><a href="../invocation/functions/invoke_procedure.html" title="invoke_procedure"><code class="computeroutput"><span class="identifier">invoke_procedure</span></code></a></li>
|
||||
</ul></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"><small>Copyright © 2001-2005 Joel de Guzman, Dan Marsden</small></td>
|
||||
</tr></table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="fused.html"><img src="../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../adapters.html"><img src="../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../images/home.png" alt="Home"></a><a accesskey="n" href="fused_function_object.html"><img src="../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,270 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>unfused_generic</title>
|
||||
<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../adapters.html" title=" Adapters">
|
||||
<link rel="prev" href="fused_function_object.html" title="fused_function_object">
|
||||
<link rel="next" href="unfused_lvalue_args.html" title="unfused_lvalue_args">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
||||
<table cellpadding="2" width="100%">
|
||||
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
|
||||
<td align="center"><a href="../../../../../../../index.htm">Home</a></td>
|
||||
<td align="center"><a href="../../../../../../libraries.htm">Libraries</a></td>
|
||||
<td align="center"><a href="../../../../../../../people/people.htm">People</a></td>
|
||||
<td align="center"><a href="../../../../../../../more/faq.htm">FAQ</a></td>
|
||||
<td align="center"><a href="../../../../../../../more/index.htm">More</a></td>
|
||||
</table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="fused_function_object.html"><img src="../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../adapters.html"><img src="../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../images/home.png" alt="Home"></a><a accesskey="n" href="unfused_lvalue_args.html"><img src="../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
<div class="section" lang="en">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="fusion.functional.adapters.unfused_generic"></a><a href="unfused_generic.html" title="unfused_generic">unfused_generic</a></h4></div></div></div>
|
||||
<a name="fusion.functional.adapters.unfused_generic.description"></a><h5>
|
||||
<a name="id1213504"></a>
|
||||
<a href="unfused_generic.html#fusion.functional.adapters.unfused_generic.description">Description</a>
|
||||
</h5>
|
||||
<p>
|
||||
An n-ary <a href="../concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic Function
|
||||
Object</a> adapter template for an unary <a href="../concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic
|
||||
Function Object</a> target function. When called, its arguments are
|
||||
bundled to a <a href="../../sequences/concepts/random_access_sequence.html" title="Random
|
||||
Access Sequence">Random
|
||||
Access Sequence</a> of references that is passed to the target function.
|
||||
Non-const LValue arguments are transported as references to non-const,
|
||||
otherwise references to const are used.
|
||||
</p>
|
||||
<div class="tip"><table border="0" summary="Tip">
|
||||
<tr>
|
||||
<td rowspan="2" align="center" valign="top" width="25"><img alt="[Tip]" src="../../../images/tip.png"></td>
|
||||
<th align="left">Tip</th>
|
||||
</tr>
|
||||
<tr><td align="left" valign="top"><p>
|
||||
Detecting mutable LValues on a per-argument basis is currently a compile
|
||||
time expensive operation (see <a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2002/n1385.htm" target="_top">The
|
||||
Forwarding Problem</a> for details). Therefore, there are two, lightweight
|
||||
and more restricted variants of this class template, <a href="unfused_lvalue_args.html" title="unfused_lvalue_args"><code class="computeroutput"><span class="identifier">unfused_lvalue_args</span></code></a> and <a href="unfused_rvalue_args.html" title="unfused_rvalue_args"><code class="computeroutput"><span class="identifier">unfused_rvalue_args</span></code></a>.
|
||||
</p></td></tr>
|
||||
</table></div>
|
||||
<p>
|
||||
The overload set of the adapter's function call operator can be restricted
|
||||
by removing the <code class="computeroutput"><span class="identifier">type</span></code> member
|
||||
from the nested result metafunction of the <a href="../concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic
|
||||
Function Object</a> (in this case the substitution-failure-is-not-an-error
|
||||
principle applies for non-nullary case and nullary calls are explicitly
|
||||
disabled by the library).
|
||||
</p>
|
||||
<div class="caution"><table border="0" summary="Caution">
|
||||
<tr>
|
||||
<td rowspan="2" align="center" valign="top" width="25"><img alt="[Caution]" src="../../../images/caution.png"></td>
|
||||
<th align="left">Caution</th>
|
||||
</tr>
|
||||
<tr><td align="left" valign="top"><p>
|
||||
As the nullary call operator cannot be a template it will be instantiated
|
||||
along with the class template, so it must be disabled (as described above)
|
||||
in cases where it isn't instantiable.
|
||||
</p></td></tr>
|
||||
</table></div>
|
||||
<p>
|
||||
The type of the target function is allowed to be const qualified or a reference.
|
||||
Const qualification is preserved and propagated appropriately (in other
|
||||
words, only const versions of <code class="literal">operator()</code> can be used
|
||||
if the target function object is const - or, in case the target function
|
||||
object is held by value, the adapter is const).
|
||||
</p>
|
||||
<a name="fusion.functional.adapters.unfused_generic.header"></a><h5>
|
||||
<a name="id1213664"></a>
|
||||
<a href="unfused_generic.html#fusion.functional.adapters.unfused_generic.header">Header</a>
|
||||
</h5>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">functional</span><span class="special">/</span><span class="identifier">adapter</span><span class="special">/</span><span class="identifier">unfused_generic</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.functional.adapters.unfused_generic.synopsis"></a><h5>
|
||||
<a name="id1213758"></a>
|
||||
<a href="unfused_generic.html#fusion.functional.adapters.unfused_generic.synopsis">Synopsis</a>
|
||||
</h5>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">template</span> <span class="special"><</span><span class="keyword">class</span> <span class="identifier">Function</span><span class="special">></span>
|
||||
<span class="keyword">class</span> <span class="identifier">unfused_generic</span><span class="special">;</span>
|
||||
</pre>
|
||||
<a name="fusion.functional.adapters.unfused_generic.template_parameters"></a><h5>
|
||||
<a name="id1213828"></a>
|
||||
<a href="unfused_generic.html#fusion.functional.adapters.unfused_generic.template_parameters">Template
|
||||
parameters</a>
|
||||
</h5>
|
||||
<div class="informaltable"><table class="table">
|
||||
<colgroup>
|
||||
<col>
|
||||
<col>
|
||||
<col>
|
||||
</colgroup>
|
||||
<thead><tr>
|
||||
<th>Parameter</th>
|
||||
<th>Description</th>
|
||||
<th>Default</th>
|
||||
</tr></thead>
|
||||
<tbody><tr>
|
||||
<td><code class="computeroutput"><span class="identifier">Function</span></code></td>
|
||||
<td>An
|
||||
unary <a href="../concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic
|
||||
Function Object</a>
|
||||
</td>
|
||||
<td> </td>
|
||||
</tr></tbody>
|
||||
</table></div>
|
||||
<a name="fusion.functional.adapters.unfused_generic.model_of"></a><h5>
|
||||
<a name="id1213902"></a>
|
||||
<a href="unfused_generic.html#fusion.functional.adapters.unfused_generic.model_of">Model
|
||||
of</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul type="disc">
|
||||
<li><a href="../concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic Function
|
||||
Object</a></li>
|
||||
<li><a href="../concepts/def_callable.html" title=" Deferred
|
||||
Callable Object">Deferred Callable
|
||||
Object</a></li>
|
||||
</ul></div>
|
||||
<div class="variablelist">
|
||||
<p class="title"><b>Notation</b></p>
|
||||
<dl>
|
||||
<dt><span class="term"><code class="computeroutput"><span class="identifier">F</span></code></span></dt>
|
||||
<dd>
|
||||
A possibly const qualified, unary <a href="../concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic
|
||||
Function Object</a> type or reference type thereof
|
||||
</dd>
|
||||
<dt><span class="term"><code class="computeroutput"><span class="identifier">f</span></code></span></dt>
|
||||
<dd>
|
||||
An object convertible to <code class="computeroutput"><span class="identifier">F</span></code>
|
||||
</dd>
|
||||
<dt><span class="term"><code class="computeroutput"><span class="identifier">UG</span></code></span></dt>
|
||||
<dd>
|
||||
The type <code class="computeroutput"><span class="identifier">unfused_generic</span><span class="special"><</span><span class="identifier">F</span><span class="special">></span></code>
|
||||
</dd>
|
||||
<dt><span class="term"><code class="computeroutput"><span class="identifier">ug</span></code></span></dt>
|
||||
<dd>
|
||||
An instance of <code class="computeroutput"><span class="identifier">UG</span></code>, initialized
|
||||
with <code class="computeroutput"><span class="identifier">f</span></code>
|
||||
</dd>
|
||||
<dt><span class="term"><code class="computeroutput"><span class="identifier">a0</span></code>...<code class="computeroutput"><span class="identifier">aN</span></code></span></dt>
|
||||
<dd>
|
||||
Arguments to <code class="computeroutput"><span class="identifier">ug</span></code>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<a name="fusion.functional.adapters.unfused_generic.expression_semantics"></a><h5>
|
||||
<a name="id1214110"></a>
|
||||
<a href="unfused_generic.html#fusion.functional.adapters.unfused_generic.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h5>
|
||||
<div class="informaltable"><table class="table">
|
||||
<colgroup>
|
||||
<col>
|
||||
<col>
|
||||
</colgroup>
|
||||
<thead><tr>
|
||||
<th>Expression</th>
|
||||
<th>Semantics</th>
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><code class="computeroutput"><span class="identifier">UG</span><span class="special">(</span><span class="identifier">f</span><span class="special">)</span></code></td>
|
||||
<td>Creates
|
||||
a fused function as described above, initializes the target function
|
||||
with <code class="computeroutput"><span class="identifier">f</span></code>.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><code class="computeroutput"><span class="identifier">UG</span><span class="special">()</span></code></td>
|
||||
<td>Creates
|
||||
a fused function as described above, attempts to use <code class="computeroutput"><span class="identifier">F</span></code>'s default constructor.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<code class="computeroutput"><span class="identifier">ug</span><span class="special">(</span><span class="identifier">a0</span></code>...<code class="computeroutput"><span class="identifier">aN</span><span class="special">)</span></code>
|
||||
</td>
|
||||
<td>Calls <code class="computeroutput"><span class="identifier">f</span></code> with a <a href="../../sequences.html" title="Sequences">Sequence</a>
|
||||
that contains references to the arguments <code class="computeroutput"><span class="identifier">a0</span></code>...<code class="computeroutput"><span class="identifier">aN</span></code>.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table></div>
|
||||
<a name="fusion.functional.adapters.unfused_generic.example"></a><h5>
|
||||
<a name="id1214298"></a>
|
||||
<a href="unfused_generic.html#fusion.functional.adapters.unfused_generic.example">Example</a>
|
||||
</h5>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">template</span> <span class="special"><</span><span class="keyword">typename</span> <span class="identifier">Function</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T</span><span class="special">></span>
|
||||
<span class="keyword">class</span> <span class="identifier">fused_bound_1st</span>
|
||||
<span class="special">{</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">traits</span><span class="special">::</span><a href="../../support/deduce.html" title="deduce"><code class="computeroutput"><span class="identifier">deduce</span></code></a><span class="special"><</span><span class="identifier">Function</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">fnc_deferred</span><span class="special">;</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">traits</span><span class="special">::</span><a href="../../support/deduce.html" title="deduce"><code class="computeroutput"><span class="identifier">deduce</span></code></a><span class="special"><</span><span class="identifier">T</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">xxx_bound</span><span class="special">;</span>
|
||||
<span class="keyword">public</span><span class="special">:</span>
|
||||
|
||||
<span class="identifier">fused_bound_1st</span><span class="special">(</span><span class="identifier">Function</span> <span class="identifier">deferred</span><span class="special">,</span> <span class="identifier">T</span> <span class="identifier">bound</span><span class="special">)</span>
|
||||
<span class="special">:</span> <span class="identifier">fnc_deferred</span><span class="special">(</span><span class="identifier">deferred</span><span class="special">),</span> <span class="identifier">xxx_bound</span><span class="special">(</span><span class="identifier">bound</span><span class="special">)</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">Seq</span><span class="special">></span>
|
||||
<span class="keyword">struct</span> <span class="identifier">result</span>
|
||||
<span class="special">:</span> <a href="../invocation/metafunctions/invoke.html" title="invoke"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">invoke</span></code></a><span class="special"><</span> <span class="identifier">Function</span><span class="special">,</span>
|
||||
<span class="keyword">typename</span> <a href="../../algorithms/transformation/metafunctions/push_front.html" title="push_front"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">push_front</span></code></a><span class="special"><</span><span class="identifier">Seq</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="special">{</span> <span class="special">};</span>
|
||||
|
||||
<span class="keyword">template</span> <span class="special"><</span><span class="keyword">class</span> <span class="identifier">Seq</span><span class="special">></span>
|
||||
<span class="keyword">typename</span> <span class="identifier">result</span><span class="special"><</span><span class="identifier">Seq</span><span class="special">>::</span><span class="identifier">type</span> <span class="keyword">operator</span><span class="special">()(</span><span class="identifier">Seq</span> <span class="keyword">const</span> <span class="special">&</span> <span class="identifier">s</span><span class="special">)</span> <span class="keyword">const</span>
|
||||
<span class="special">{</span>
|
||||
<span class="keyword">return</span> <a href="../invocation/functions/invoke.html" title="invoke"><code class="computeroutput"><span class="identifier">invoke</span></code></a><span class="special">(</span><span class="identifier">fnc_deferred</span><span class="special">,</span> <span class="identifier">push_front</span><span class="special">(</span><span class="identifier">s</span><span class="special">,</span><span class="identifier">xxx_bound</span><span class="special">));</span>
|
||||
<span class="special">}</span>
|
||||
<span class="special">};</span>
|
||||
|
||||
<span class="keyword">template</span> <span class="special"><</span><span class="keyword">typename</span> <span class="identifier">Function</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">T</span><span class="special">></span>
|
||||
<span class="identifier">unfused_generic</span><span class="special"><</span> <span class="identifier">fused_bound_1st</span><span class="special"><</span><span class="identifier">Function</span><span class="special">,</span><span class="identifier">T</span><span class="special">></span> <span class="special">></span>
|
||||
<span class="identifier">bind_1st</span><span class="special">(</span><span class="identifier">Function</span> <span class="identifier">f</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</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">unfused_generic</span><span class="special"><</span> <span class="identifier">fused_bound_1st</span><span class="special"><</span><span class="identifier">Function</span><span class="special">,</span><span class="identifier">T</span><span class="special">></span> <span class="special">>(</span>
|
||||
<span class="identifier">fused_bound_1st</span><span class="special"><</span><span class="identifier">Function</span><span class="special">,</span><span class="identifier">T</span><span class="special">>(</span><span class="identifier">f</span><span class="special">,</span><span class="identifier">x</span><span class="special">)</span> <span class="special">);</span>
|
||||
<span class="special">}</span>
|
||||
|
||||
<span class="keyword">int</span> <span class="identifier">test_func</span><span class="special">(</span><span class="keyword">int</span> <span class="identifier">a</span><span class="special">,</span> <span class="keyword">int</span> <span class="identifier">b</span><span class="special">,</span> <span class="keyword">int</span> <span class="identifier">c</span><span class="special">)</span>
|
||||
<span class="special">{</span>
|
||||
<span class="keyword">return</span> <span class="identifier">a</span><span class="special">+</span><span class="identifier">b</span><span class="special">+</span><span class="identifier">c</span><span class="special">;</span>
|
||||
<span class="special">}</span>
|
||||
|
||||
<span class="keyword">void</span> <span class="identifier">try_it</span><span class="special">()</span>
|
||||
<span class="special">{</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><span class="identifier">bind_1st</span><span class="special">(&</span> <span class="identifier">test_func</span><span class="special">,</span><span class="number">3</span><span class="special">)(-</span><span class="number">2</span><span class="special">,-</span><span class="number">1</span><span class="special">)</span> <span class="special">==</span> <span class="number">0</span><span class="special">);</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><span class="identifier">bind_1st</span><span class="special">(</span><a href="http://www.sgi.com/tech/stl/plus.html" target="_top"><code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">plus</span></code></a><span class="special"><</span><span class="keyword">float</span><span class="special">>(),</span> <span class="number">1</span><span class="special">)(</span><span class="number">0.5f</span><span class="special">)</span> <span class="special">==</span> <span class="number">1.5f</span><span class="special">);</span>
|
||||
<span class="special">}</span>
|
||||
</pre>
|
||||
<a name="fusion.functional.adapters.unfused_generic.see_also"></a><h5>
|
||||
<a name="id1215450"></a>
|
||||
<a href="unfused_generic.html#fusion.functional.adapters.unfused_generic.see_also">See
|
||||
also</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul type="disc">
|
||||
<li><a href="unfused_lvalue_args.html" title="unfused_lvalue_args"><code class="computeroutput"><span class="identifier">unfused_lvalue_args</span></code></a></li>
|
||||
<li><a href="unfused_rvalue_args.html" title="unfused_rvalue_args"><code class="computeroutput"><span class="identifier">unfused_rvalue_args</span></code></a></li>
|
||||
<li><a href="unfused_typed.html" title="unfused_typed"><code class="computeroutput"><span class="identifier">unfused_typed</span></code></a></li>
|
||||
<li><a href="../../support/deduce.html" title="deduce"><code class="computeroutput"><span class="identifier">deduce</span></code></a></li>
|
||||
<li><a href="../../support/deduce_sequence.html" title="deduce_sequence"><code class="computeroutput"><span class="identifier">deduce_sequence</span></code></a></li>
|
||||
</ul></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"><small>Copyright © 2001-2005 Joel de Guzman, Dan Marsden</small></td>
|
||||
</tr></table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="fused_function_object.html"><img src="../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../adapters.html"><img src="../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../images/home.png" alt="Home"></a><a accesskey="n" href="unfused_lvalue_args.html"><img src="../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,235 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>unfused_lvalue_args</title>
|
||||
<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../adapters.html" title=" Adapters">
|
||||
<link rel="prev" href="unfused_generic.html" title="unfused_generic">
|
||||
<link rel="next" href="unfused_rvalue_args.html" title="unfused_rvalue_args">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
||||
<table cellpadding="2" width="100%">
|
||||
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
|
||||
<td align="center"><a href="../../../../../../../index.htm">Home</a></td>
|
||||
<td align="center"><a href="../../../../../../libraries.htm">Libraries</a></td>
|
||||
<td align="center"><a href="../../../../../../../people/people.htm">People</a></td>
|
||||
<td align="center"><a href="../../../../../../../more/faq.htm">FAQ</a></td>
|
||||
<td align="center"><a href="../../../../../../../more/index.htm">More</a></td>
|
||||
</table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="unfused_generic.html"><img src="../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../adapters.html"><img src="../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../images/home.png" alt="Home"></a><a accesskey="n" href="unfused_rvalue_args.html"><img src="../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
<div class="section" lang="en">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="fusion.functional.adapters.unfused_lvalue_args"></a><a href="unfused_lvalue_args.html" title="unfused_lvalue_args">unfused_lvalue_args</a></h4></div></div></div>
|
||||
<a name="fusion.functional.adapters.unfused_lvalue_args.description"></a><h5>
|
||||
<a name="id1215582"></a>
|
||||
<a href="unfused_lvalue_args.html#fusion.functional.adapters.unfused_lvalue_args.description">Description</a>
|
||||
</h5>
|
||||
<p>
|
||||
An n-ary <a href="../concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic Function
|
||||
Object</a> adapter template for an unary <a href="../concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic
|
||||
Function Object</a> target function. When called, its arguments are
|
||||
bundled to a <a href="../../sequences/concepts/random_access_sequence.html" title="Random
|
||||
Access Sequence">Random
|
||||
Access Sequence</a> of references that is passed to the target function
|
||||
object. Only LValue arguments are accepted.
|
||||
</p>
|
||||
<p>
|
||||
The overload set of the adapter's function call operator can be restricted
|
||||
by removing the <code class="computeroutput"><span class="identifier">type</span></code> member
|
||||
from the nested result metafunction of the <a href="../concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic
|
||||
Function Object</a> (in this case the substitution-failure-is-not-an-error
|
||||
principle applies for non-nullary calls and nullary calls are explicitly
|
||||
disabled by the library).
|
||||
</p>
|
||||
<div class="caution"><table border="0" summary="Caution">
|
||||
<tr>
|
||||
<td rowspan="2" align="center" valign="top" width="25"><img alt="[Caution]" src="../../../images/caution.png"></td>
|
||||
<th align="left">Caution</th>
|
||||
</tr>
|
||||
<tr><td align="left" valign="top"><p>
|
||||
As the nullary call operator cannot be a template it will be instantiated
|
||||
along with the class template, so it must be disabled (as described above)
|
||||
in cases where it isn't instantiable.
|
||||
</p></td></tr>
|
||||
</table></div>
|
||||
<p>
|
||||
The type of the target function is allowed to be const qualified or a reference.
|
||||
Const qualification is preserved and propagated appropriately (in other
|
||||
words, only const versions of <code class="literal">operator()</code> can be used
|
||||
if the target function object is const - or, in case the target function
|
||||
object is held by value, the adapter is const).
|
||||
</p>
|
||||
<a name="fusion.functional.adapters.unfused_lvalue_args.header"></a><h5>
|
||||
<a name="id1215689"></a>
|
||||
<a href="unfused_lvalue_args.html#fusion.functional.adapters.unfused_lvalue_args.header">Header</a>
|
||||
</h5>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">functional</span><span class="special">/</span><span class="identifier">adapter</span><span class="special">/</span><span class="identifier">unfused_lvalue_args</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.functional.adapters.unfused_lvalue_args.synopsis"></a><h5>
|
||||
<a name="id1215783"></a>
|
||||
<a href="unfused_lvalue_args.html#fusion.functional.adapters.unfused_lvalue_args.synopsis">Synopsis</a>
|
||||
</h5>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">template</span> <span class="special"><</span><span class="keyword">class</span> <span class="identifier">Function</span><span class="special">></span>
|
||||
<span class="keyword">class</span> <span class="identifier">unfused_lvalue_args</span><span class="special">;</span>
|
||||
</pre>
|
||||
<a name="fusion.functional.adapters.unfused_lvalue_args.template_parameters"></a><h5>
|
||||
<a name="id1215856"></a>
|
||||
<a href="unfused_lvalue_args.html#fusion.functional.adapters.unfused_lvalue_args.template_parameters">Template
|
||||
parameters</a>
|
||||
</h5>
|
||||
<div class="informaltable"><table class="table">
|
||||
<colgroup>
|
||||
<col>
|
||||
<col>
|
||||
<col>
|
||||
</colgroup>
|
||||
<thead><tr>
|
||||
<th>Parameter</th>
|
||||
<th>Description</th>
|
||||
<th>Default</th>
|
||||
</tr></thead>
|
||||
<tbody><tr>
|
||||
<td><code class="computeroutput"><span class="identifier">Function</span></code></td>
|
||||
<td>A
|
||||
unary <a href="../concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic
|
||||
Function Object</a>
|
||||
</td>
|
||||
<td> </td>
|
||||
</tr></tbody>
|
||||
</table></div>
|
||||
<a name="fusion.functional.adapters.unfused_lvalue_args.model_of"></a><h5>
|
||||
<a name="id1215930"></a>
|
||||
<a href="unfused_lvalue_args.html#fusion.functional.adapters.unfused_lvalue_args.model_of">Model
|
||||
of</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul type="disc">
|
||||
<li><a href="../concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic Function
|
||||
Object</a></li>
|
||||
<li><a href="../concepts/def_callable.html" title=" Deferred
|
||||
Callable Object">Deferred Callable
|
||||
Object</a></li>
|
||||
</ul></div>
|
||||
<div class="variablelist">
|
||||
<p class="title"><b>Notation</b></p>
|
||||
<dl>
|
||||
<dt><span class="term"><code class="computeroutput"><span class="identifier">F</span></code></span></dt>
|
||||
<dd>
|
||||
A possibly const qualified, unary <a href="../concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic
|
||||
Function Object</a> type or reference type thereof
|
||||
</dd>
|
||||
<dt><span class="term"><code class="computeroutput"><span class="identifier">f</span></code></span></dt>
|
||||
<dd>
|
||||
An object convertible to <code class="computeroutput"><span class="identifier">F</span></code>
|
||||
</dd>
|
||||
<dt><span class="term"><code class="computeroutput"><span class="identifier">UL</span></code></span></dt>
|
||||
<dd>
|
||||
The type <code class="computeroutput"><span class="identifier">unfused_lvalue_args</span><span class="special"><</span><span class="identifier">F</span><span class="special">></span></code>
|
||||
</dd>
|
||||
<dt><span class="term"><code class="computeroutput"><span class="identifier">ul</span></code></span></dt>
|
||||
<dd>
|
||||
An instance of <code class="computeroutput"><span class="identifier">UL</span></code>, initialized
|
||||
with <code class="computeroutput"><span class="identifier">f</span></code>
|
||||
</dd>
|
||||
<dt><span class="term"><code class="computeroutput"><span class="identifier">a0</span></code>...<code class="computeroutput"><span class="identifier">aN</span></code></span></dt>
|
||||
<dd>
|
||||
Arguments to <code class="computeroutput"><span class="identifier">ul</span></code>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<a name="fusion.functional.adapters.unfused_lvalue_args.expression_semantics"></a><h5>
|
||||
<a name="id1216140"></a>
|
||||
<a href="unfused_lvalue_args.html#fusion.functional.adapters.unfused_lvalue_args.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h5>
|
||||
<div class="informaltable"><table class="table">
|
||||
<colgroup>
|
||||
<col>
|
||||
<col>
|
||||
</colgroup>
|
||||
<thead><tr>
|
||||
<th>Expression</th>
|
||||
<th>Semantics</th>
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><code class="computeroutput"><span class="identifier">UL</span><span class="special">(</span><span class="identifier">f</span><span class="special">)</span></code></td>
|
||||
<td>Creates
|
||||
a fused function as described above, initializes the target function
|
||||
with <code class="computeroutput"><span class="identifier">f</span></code>.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><code class="computeroutput"><span class="identifier">UL</span><span class="special">()</span></code></td>
|
||||
<td>Creates
|
||||
a fused function as described above, attempts to use <code class="computeroutput"><span class="identifier">F</span></code>'s default constructor.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<code class="computeroutput"><span class="identifier">ul</span><span class="special">(</span><span class="identifier">a0</span></code>...<code class="computeroutput"><span class="identifier">aN</span><span class="special">)</span></code>
|
||||
</td>
|
||||
<td>Calls <code class="computeroutput"><span class="identifier">f</span></code> with a <a href="../../sequences.html" title="Sequences">Sequence</a>
|
||||
that contains references to the arguments <code class="computeroutput"><span class="identifier">a0</span></code>...<code class="computeroutput"><span class="identifier">aN</span></code>.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table></div>
|
||||
<a name="fusion.functional.adapters.unfused_lvalue_args.example"></a><h5>
|
||||
<a name="id1216328"></a>
|
||||
<a href="unfused_lvalue_args.html#fusion.functional.adapters.unfused_lvalue_args.example">Example</a>
|
||||
</h5>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">struct</span> <span class="identifier">fused_incrementer</span>
|
||||
<span class="special">{</span>
|
||||
<span class="keyword">template</span> <span class="special"><</span><span class="keyword">class</span> <span class="identifier">Seq</span><span class="special">></span>
|
||||
<span class="keyword">struct</span> <span class="identifier">result</span>
|
||||
<span class="special">{</span>
|
||||
<span class="keyword">typedef</span> <span class="keyword">void</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">Seq</span><span class="special">></span>
|
||||
<span class="keyword">void</span> <span class="keyword">operator</span><span class="special">()(</span><span class="identifier">Seq</span> <span class="keyword">const</span> <span class="special">&</span> <span class="identifier">s</span><span class="special">)</span> <span class="keyword">const</span>
|
||||
<span class="special">{</span>
|
||||
<a href="../../algorithms/iteration/functions/for_each.html" title="for_each"><code class="computeroutput"><span class="identifier">for_each</span></code></a><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">lambda</span><span class="special">::</span><span class="identifier">_1</span><span class="special">);</span>
|
||||
<span class="special">}</span>
|
||||
<span class="special">};</span>
|
||||
|
||||
<span class="keyword">void</span> <span class="identifier">try_it</span><span class="special">()</span>
|
||||
<span class="special">{</span>
|
||||
<span class="identifier">unfused_lvalue_args</span><span class="special"><</span><span class="identifier">fused_incrementer</span><span class="special">></span> <span class="identifier">increment</span><span class="special">;</span>
|
||||
<span class="keyword">int</span> <span class="identifier">a</span> <span class="special">=</span> <span class="number">2</span><span class="special">;</span> <span class="keyword">char</span> <span class="identifier">b</span> <span class="special">=</span> <span class="char">'X'</span><span class="special">;</span>
|
||||
<span class="identifier">increment</span><span class="special">(</span><span class="identifier">a</span><span class="special">,</span><span class="identifier">b</span><span class="special">);</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><span class="identifier">a</span> <span class="special">==</span> <span class="number">3</span> <span class="special">&&</span> <span class="identifier">b</span> <span class="special">==</span> <span class="char">'Y'</span><span class="special">);</span>
|
||||
<span class="special">}</span>
|
||||
</pre>
|
||||
<a name="fusion.functional.adapters.unfused_lvalue_args.see_also"></a><h5>
|
||||
<a name="id1216767"></a>
|
||||
<a href="unfused_lvalue_args.html#fusion.functional.adapters.unfused_lvalue_args.see_also">See
|
||||
also</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul type="disc">
|
||||
<li><a href="unfused_rvalue_args.html" title="unfused_rvalue_args"><code class="computeroutput"><span class="identifier">unfused_rvalue_args</span></code></a></li>
|
||||
<li><a href="unfused_generic.html" title="unfused_generic"><code class="computeroutput"><span class="identifier">unfused_generic</span></code></a></li>
|
||||
<li><a href="unfused_typed.html" title="unfused_typed"><code class="computeroutput"><span class="identifier">unfused_typed</span></code></a></li>
|
||||
</ul></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"><small>Copyright © 2001-2005 Joel de Guzman, Dan Marsden</small></td>
|
||||
</tr></table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="unfused_generic.html"><img src="../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../adapters.html"><img src="../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../images/home.png" alt="Home"></a><a accesskey="n" href="unfused_rvalue_args.html"><img src="../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,235 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>unfused_rvalue_args</title>
|
||||
<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../adapters.html" title=" Adapters">
|
||||
<link rel="prev" href="unfused_lvalue_args.html" title="unfused_lvalue_args">
|
||||
<link rel="next" href="unfused_typed.html" title="unfused_typed">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
||||
<table cellpadding="2" width="100%">
|
||||
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
|
||||
<td align="center"><a href="../../../../../../../index.htm">Home</a></td>
|
||||
<td align="center"><a href="../../../../../../libraries.htm">Libraries</a></td>
|
||||
<td align="center"><a href="../../../../../../../people/people.htm">People</a></td>
|
||||
<td align="center"><a href="../../../../../../../more/faq.htm">FAQ</a></td>
|
||||
<td align="center"><a href="../../../../../../../more/index.htm">More</a></td>
|
||||
</table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="unfused_lvalue_args.html"><img src="../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../adapters.html"><img src="../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../images/home.png" alt="Home"></a><a accesskey="n" href="unfused_typed.html"><img src="../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
<div class="section" lang="en">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="fusion.functional.adapters.unfused_rvalue_args"></a><a href="unfused_rvalue_args.html" title="unfused_rvalue_args">unfused_rvalue_args</a></h4></div></div></div>
|
||||
<a name="fusion.functional.adapters.unfused_rvalue_args.description"></a><h5>
|
||||
<a name="id1216864"></a>
|
||||
<a href="unfused_rvalue_args.html#fusion.functional.adapters.unfused_rvalue_args.description">Description</a>
|
||||
</h5>
|
||||
<p>
|
||||
An n-ary <a href="../concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic Function
|
||||
Object</a> adapter template for an unary <a href="../concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic
|
||||
Function Object</a> target function. When called, its arguments are
|
||||
bundled to a <a href="../../sequences/concepts/random_access_sequence.html" title="Random
|
||||
Access Sequence">Random
|
||||
Access Sequence</a> of references that is passed to the target function
|
||||
object. All referenced objects in the sequence are const qualified.
|
||||
</p>
|
||||
<p>
|
||||
The overload set of the adapter's function call operator can be restricted
|
||||
by removing the <code class="computeroutput"><span class="identifier">type</span></code> member
|
||||
from the nested result metafunction of the <a href="../concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic
|
||||
Function Object</a> (in this case the substitution-failure-is-not-an-error
|
||||
principle applies for non-nullary calls and nullary calls are explicitly
|
||||
disabled by the library).
|
||||
</p>
|
||||
<div class="caution"><table border="0" summary="Caution">
|
||||
<tr>
|
||||
<td rowspan="2" align="center" valign="top" width="25"><img alt="[Caution]" src="../../../images/caution.png"></td>
|
||||
<th align="left">Caution</th>
|
||||
</tr>
|
||||
<tr><td align="left" valign="top"><p>
|
||||
As the nullary call operator cannot be a template it will be instantiated
|
||||
along with the class template, so it must be disabled (as described above)
|
||||
in cases where it isn't instantiable.
|
||||
</p></td></tr>
|
||||
</table></div>
|
||||
<p>
|
||||
The type of the target function is allowed to be const qualified or a reference.
|
||||
Const qualification is preserved and propagated appropriately (in other
|
||||
words, only const versions of <code class="literal">operator()</code> can be used
|
||||
if the target function object is const - or, in case the target function
|
||||
object is held by value, the adapter is const).
|
||||
</p>
|
||||
<a name="fusion.functional.adapters.unfused_rvalue_args.header"></a><h5>
|
||||
<a name="id1216972"></a>
|
||||
<a href="unfused_rvalue_args.html#fusion.functional.adapters.unfused_rvalue_args.header">Header</a>
|
||||
</h5>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">functional</span><span class="special">/</span><span class="identifier">adapter</span><span class="special">/</span><span class="identifier">unfused_rvalue_args</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.functional.adapters.unfused_rvalue_args.synopsis"></a><h5>
|
||||
<a name="id1217065"></a>
|
||||
<a href="unfused_rvalue_args.html#fusion.functional.adapters.unfused_rvalue_args.synopsis">Synopsis</a>
|
||||
</h5>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">template</span> <span class="special"><</span><span class="keyword">class</span> <span class="identifier">Function</span><span class="special">></span>
|
||||
<span class="keyword">class</span> <span class="identifier">unfused_rvalue_args</span><span class="special">;</span>
|
||||
</pre>
|
||||
<a name="fusion.functional.adapters.unfused_rvalue_args.template_parameters"></a><h5>
|
||||
<a name="id1217138"></a>
|
||||
<a href="unfused_rvalue_args.html#fusion.functional.adapters.unfused_rvalue_args.template_parameters">Template
|
||||
parameters</a>
|
||||
</h5>
|
||||
<div class="informaltable"><table class="table">
|
||||
<colgroup>
|
||||
<col>
|
||||
<col>
|
||||
<col>
|
||||
</colgroup>
|
||||
<thead><tr>
|
||||
<th>Parameter</th>
|
||||
<th>Description</th>
|
||||
<th>Default</th>
|
||||
</tr></thead>
|
||||
<tbody><tr>
|
||||
<td><code class="computeroutput"><span class="identifier">Function</span></code></td>
|
||||
<td>A
|
||||
unary <a href="../concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic
|
||||
Function Object</a>
|
||||
</td>
|
||||
<td> </td>
|
||||
</tr></tbody>
|
||||
</table></div>
|
||||
<a name="fusion.functional.adapters.unfused_rvalue_args.model_of"></a><h5>
|
||||
<a name="id1217213"></a>
|
||||
<a href="unfused_rvalue_args.html#fusion.functional.adapters.unfused_rvalue_args.model_of">Model
|
||||
of</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul type="disc">
|
||||
<li><a href="../concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic Function
|
||||
Object</a></li>
|
||||
<li><a href="../concepts/def_callable.html" title=" Deferred
|
||||
Callable Object">Deferred Callable
|
||||
Object</a></li>
|
||||
</ul></div>
|
||||
<div class="variablelist">
|
||||
<p class="title"><b>Notation</b></p>
|
||||
<dl>
|
||||
<dt><span class="term"><code class="computeroutput"><span class="identifier">F</span></code></span></dt>
|
||||
<dd>
|
||||
A possibly const qualified, unary <a href="../concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic
|
||||
Function Object</a> type or reference type thereof
|
||||
</dd>
|
||||
<dt><span class="term"><code class="computeroutput"><span class="identifier">f</span></code></span></dt>
|
||||
<dd>
|
||||
An object convertible to <code class="computeroutput"><span class="identifier">F</span></code>
|
||||
</dd>
|
||||
<dt><span class="term"><code class="computeroutput"><span class="identifier">UR</span></code></span></dt>
|
||||
<dd>
|
||||
The type <code class="computeroutput"><span class="identifier">unfused_rvalue_args</span><span class="special"><</span><span class="identifier">F</span><span class="special">></span></code>
|
||||
</dd>
|
||||
<dt><span class="term"><code class="computeroutput"><span class="identifier">ur</span></code></span></dt>
|
||||
<dd>
|
||||
An instance of <code class="computeroutput"><span class="identifier">UR</span></code>, initialized
|
||||
with <code class="computeroutput"><span class="identifier">f</span></code>
|
||||
</dd>
|
||||
<dt><span class="term"><code class="computeroutput"><span class="identifier">a0</span></code>...<code class="computeroutput"><span class="identifier">aN</span></code></span></dt>
|
||||
<dd>
|
||||
Arguments to <code class="computeroutput"><span class="identifier">ur</span></code>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<a name="fusion.functional.adapters.unfused_rvalue_args.expression_semantics"></a><h5>
|
||||
<a name="id1217423"></a>
|
||||
<a href="unfused_rvalue_args.html#fusion.functional.adapters.unfused_rvalue_args.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h5>
|
||||
<div class="informaltable"><table class="table">
|
||||
<colgroup>
|
||||
<col>
|
||||
<col>
|
||||
</colgroup>
|
||||
<thead><tr>
|
||||
<th>Expression</th>
|
||||
<th>Semantics</th>
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><code class="computeroutput"><span class="identifier">UR</span><span class="special">(</span><span class="identifier">f</span><span class="special">)</span></code></td>
|
||||
<td>Creates
|
||||
a fused function as described above, initializes the target function
|
||||
with <code class="computeroutput"><span class="identifier">f</span></code>.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><code class="computeroutput"><span class="identifier">UR</span><span class="special">()</span></code></td>
|
||||
<td>Creates
|
||||
a fused function as described above, attempts to use <code class="computeroutput"><span class="identifier">F</span></code>'s default constructor.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<code class="computeroutput"><span class="identifier">ur</span><span class="special">(</span><span class="identifier">a0</span></code>...<code class="computeroutput"><span class="identifier">aN</span><span class="special">)</span></code>
|
||||
</td>
|
||||
<td>Calls <code class="computeroutput"><span class="identifier">f</span></code> with a <a href="../../sequences.html" title="Sequences">Sequence</a>
|
||||
that contains references to the arguments <code class="computeroutput"><span class="identifier">a0</span></code>...<code class="computeroutput"><span class="identifier">aN</span></code>.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table></div>
|
||||
<a name="fusion.functional.adapters.unfused_rvalue_args.example"></a><h5>
|
||||
<a name="id1217611"></a>
|
||||
<a href="unfused_rvalue_args.html#fusion.functional.adapters.unfused_rvalue_args.example">Example</a>
|
||||
</h5>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">struct</span> <span class="identifier">sequence_printer</span>
|
||||
<span class="special">{</span>
|
||||
<span class="keyword">template</span> <span class="special"><</span><span class="keyword">class</span> <span class="identifier">Seq</span><span class="special">></span>
|
||||
<span class="keyword">struct</span> <span class="identifier">result</span>
|
||||
<span class="special">{</span>
|
||||
<span class="keyword">typedef</span> <span class="keyword">void</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">Seq</span><span class="special">></span>
|
||||
<span class="keyword">void</span> <span class="keyword">operator</span><span class="special">()(</span><span class="identifier">Seq</span> <span class="keyword">const</span> <span class="special">&</span> <span class="identifier">s</span><span class="special">)</span> <span class="keyword">const</span>
|
||||
<span class="special">{</span>
|
||||
<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special"><<</span> <span class="identifier">s</span> <span class="special"><<</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span>
|
||||
<span class="special">}</span>
|
||||
<span class="special">};</span>
|
||||
|
||||
<span class="keyword">void</span> <span class="identifier">try_it</span><span class="special">()</span>
|
||||
<span class="special">{</span>
|
||||
<span class="identifier">unfused_rvalue_args</span><span class="special"><</span><span class="identifier">sequence_printer</span><span class="special">></span> <span class="identifier">print</span><span class="special">;</span>
|
||||
<span class="identifier">print</span><span class="special">(</span><span class="number">24</span><span class="special">,</span><span class="string">"bottles of beer in"</span><span class="special">,</span><span class="char">'a'</span><span class="special">,</span><span class="string">"box."</span><span class="special">);</span>
|
||||
<span class="special">}</span>
|
||||
</pre>
|
||||
<a name="fusion.functional.adapters.unfused_rvalue_args.see_also"></a><h5>
|
||||
<a name="id1217963"></a>
|
||||
<a href="unfused_rvalue_args.html#fusion.functional.adapters.unfused_rvalue_args.see_also">See
|
||||
also</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul type="disc">
|
||||
<li><a href="unfused_lvalue_args.html" title="unfused_lvalue_args"><code class="computeroutput"><span class="identifier">unfused_lvalue_args</span></code></a></li>
|
||||
<li><a href="unfused_generic.html" title="unfused_generic"><code class="computeroutput"><span class="identifier">unfused_generic</span></code></a></li>
|
||||
<li><a href="unfused_typed.html" title="unfused_typed"><code class="computeroutput"><span class="identifier">unfused_typed</span></code></a></li>
|
||||
<li><a href="../../support/deduce.html" title="deduce"><code class="computeroutput"><span class="identifier">deduce</span></code></a></li>
|
||||
<li><a href="../../support/deduce_sequence.html" title="deduce_sequence"><code class="computeroutput"><span class="identifier">deduce_sequence</span></code></a></li>
|
||||
</ul></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"><small>Copyright © 2001-2005 Joel de Guzman, Dan Marsden</small></td>
|
||||
</tr></table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="unfused_lvalue_args.html"><img src="../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../adapters.html"><img src="../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../images/home.png" alt="Home"></a><a accesskey="n" href="unfused_typed.html"><img src="../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,309 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>unfused_typed</title>
|
||||
<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../adapters.html" title=" Adapters">
|
||||
<link rel="prev" href="unfused_rvalue_args.html" title="unfused_rvalue_args">
|
||||
<link rel="next" href="../generation.html" title="Generation">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
||||
<table cellpadding="2" width="100%">
|
||||
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
|
||||
<td align="center"><a href="../../../../../../../index.htm">Home</a></td>
|
||||
<td align="center"><a href="../../../../../../libraries.htm">Libraries</a></td>
|
||||
<td align="center"><a href="../../../../../../../people/people.htm">People</a></td>
|
||||
<td align="center"><a href="../../../../../../../more/faq.htm">FAQ</a></td>
|
||||
<td align="center"><a href="../../../../../../../more/index.htm">More</a></td>
|
||||
</table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="unfused_rvalue_args.html"><img src="../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../adapters.html"><img src="../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../images/home.png" alt="Home"></a><a accesskey="n" href="../generation.html"><img src="../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
<div class="section" lang="en">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="fusion.functional.adapters.unfused_typed"></a><a href="unfused_typed.html" title="unfused_typed">unfused_typed</a></h4></div></div></div>
|
||||
<a name="fusion.functional.adapters.unfused_typed.description"></a><h5>
|
||||
<a name="id1218094"></a>
|
||||
<a href="unfused_typed.html#fusion.functional.adapters.unfused_typed.description">Description</a>
|
||||
</h5>
|
||||
<p>
|
||||
An n-ary <a href="../concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic Function
|
||||
Object</a> adapter template for an unary <a href="../concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic
|
||||
Function Object</a> target function. When called, its arguments are
|
||||
bundled to a <a href="../../sequences/concepts/random_access_sequence.html" title="Random
|
||||
Access Sequence">Random
|
||||
Access Sequence</a> that is passed to the target function object.
|
||||
</p>
|
||||
<p>
|
||||
The call operators of the resulting function object are strictly typed
|
||||
(in other words, non-templatized) with the types from a <a href="../../sequences.html" title="Sequences">Sequence</a>.
|
||||
By default, call operators with zero to N parameters are generated to,
|
||||
where N is the size of the <a href="../../sequences.html" title="Sequences">Sequence</a>
|
||||
that specifies the types.
|
||||
</p>
|
||||
<p>
|
||||
The overload set of the adapter's function call operator can be restricted
|
||||
by removing the <code class="computeroutput"><span class="identifier">type</span></code> member
|
||||
from the nested result metafunction of the <a href="../concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic
|
||||
Function Object</a> (in this case the substitution-failure-is-not-an-error
|
||||
principle applies for non-nullary calls and nullary calls are explicitly
|
||||
disabled by the library).
|
||||
</p>
|
||||
<div class="caution"><table border="0" summary="Caution">
|
||||
<tr>
|
||||
<td rowspan="2" align="center" valign="top" width="25"><img alt="[Caution]" src="../../../images/caution.png"></td>
|
||||
<th align="left">Caution</th>
|
||||
</tr>
|
||||
<tr><td align="left" valign="top"><p>
|
||||
As the function call operators are not templates, they are instantiated
|
||||
along with the class template, so they must be disabled (as described
|
||||
above) in cases where they are not instantiable.
|
||||
</p></td></tr>
|
||||
</table></div>
|
||||
<p>
|
||||
The type of the target function is allowed to be const qualified or a reference.
|
||||
Const qualification is preserved and propagated appropriately (in other
|
||||
words, only const versions of <code class="literal">operator()</code> can be used
|
||||
if the target function object is const - or, in case the target function
|
||||
object is held by value, the adapter is const).
|
||||
</p>
|
||||
<div class="tip"><table border="0" summary="Tip">
|
||||
<tr>
|
||||
<td rowspan="2" align="center" valign="top" width="25"><img alt="[Tip]" src="../../../images/tip.png"></td>
|
||||
<th align="left">Tip</th>
|
||||
</tr>
|
||||
<tr><td align="left" valign="top"><p>
|
||||
If the type sequence passed to this template contains non-reference elements,
|
||||
the element is copied only once - the call operator's signature is optimized
|
||||
automatically to avoid by-value parameters.
|
||||
</p></td></tr>
|
||||
</table></div>
|
||||
<a name="fusion.functional.adapters.unfused_typed.header"></a><h5>
|
||||
<a name="id1218234"></a>
|
||||
<a href="unfused_typed.html#fusion.functional.adapters.unfused_typed.header">Header</a>
|
||||
</h5>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">functional</span><span class="special">/</span><span class="identifier">adapter</span><span class="special">/</span><span class="identifier">unfused_typed</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.functional.adapters.unfused_typed.synopsis"></a><h5>
|
||||
<a name="id1218325"></a>
|
||||
<a href="unfused_typed.html#fusion.functional.adapters.unfused_typed.synopsis">Synopsis</a>
|
||||
</h5>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">template</span> <span class="special"><</span><span class="keyword">class</span> <span class="identifier">Function</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Sequence</span><span class="special">></span>
|
||||
<span class="keyword">class</span> <span class="identifier">unfused_typed</span><span class="special">;</span>
|
||||
</pre>
|
||||
<a name="fusion.functional.adapters.unfused_typed.template_parameters"></a><h5>
|
||||
<a name="id1218412"></a>
|
||||
<a href="unfused_typed.html#fusion.functional.adapters.unfused_typed.template_parameters">Template
|
||||
parameters</a>
|
||||
</h5>
|
||||
<div class="informaltable"><table class="table">
|
||||
<colgroup>
|
||||
<col>
|
||||
<col>
|
||||
<col>
|
||||
</colgroup>
|
||||
<thead><tr>
|
||||
<th>Parameter</th>
|
||||
<th>Description</th>
|
||||
<th>Default</th>
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><code class="computeroutput"><span class="identifier">Function</span></code></td>
|
||||
<td>A
|
||||
unary <a href="../concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic
|
||||
Function Object</a>
|
||||
</td>
|
||||
<td> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><code class="computeroutput"><span class="identifier">Sequence</span></code></td>
|
||||
<td>A
|
||||
<a href="../../sequences.html" title="Sequences">Sequence</a>
|
||||
</td>
|
||||
<td> </td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table></div>
|
||||
<a name="fusion.functional.adapters.unfused_typed.model_of"></a><h5>
|
||||
<a name="id1218510"></a>
|
||||
<a href="unfused_typed.html#fusion.functional.adapters.unfused_typed.model_of">Model
|
||||
of</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul type="disc">
|
||||
<li><a href="../concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic Function
|
||||
Object</a></li>
|
||||
<li><a href="../concepts/def_callable.html" title=" Deferred
|
||||
Callable Object">Deferred Callable
|
||||
Object</a></li>
|
||||
</ul></div>
|
||||
<div class="variablelist">
|
||||
<p class="title"><b>Notation</b></p>
|
||||
<dl>
|
||||
<dt><span class="term"><code class="computeroutput"><span class="identifier">F</span></code></span></dt>
|
||||
<dd>
|
||||
A possibly const qualified, unary <a href="../concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic
|
||||
Function Object</a> type or reference type thereof
|
||||
</dd>
|
||||
<dt><span class="term"><code class="computeroutput"><span class="identifier">f</span></code></span></dt>
|
||||
<dd>
|
||||
An object convertible to <code class="computeroutput"><span class="identifier">F</span></code>
|
||||
</dd>
|
||||
<dt><span class="term"><code class="computeroutput"><span class="identifier">S</span></code></span></dt>
|
||||
<dd>
|
||||
A <a href="../../sequences.html" title="Sequences">Sequence</a> of parameter types
|
||||
</dd>
|
||||
<dt><span class="term"><code class="computeroutput"><span class="identifier">UT</span></code></span></dt>
|
||||
<dd>
|
||||
The type <code class="computeroutput"><span class="identifier">unfused_typed</span><span class="special"><</span><span class="identifier">F</span><span class="special">,</span><span class="identifier">S</span><span class="special">></span></code>
|
||||
</dd>
|
||||
<dt><span class="term"><code class="computeroutput"><span class="identifier">ut</span></code></span></dt>
|
||||
<dd>
|
||||
An instance of <code class="computeroutput"><span class="identifier">UT</span></code>, initialized
|
||||
with <code class="computeroutput"><span class="identifier">f</span></code>
|
||||
</dd>
|
||||
<dt><span class="term"><code class="computeroutput"><span class="identifier">a0</span></code>...<code class="computeroutput"><span class="identifier">aN</span></code></span></dt>
|
||||
<dd>
|
||||
Arguments to <code class="computeroutput"><span class="identifier">ut</span></code>, convertible
|
||||
to the types in <code class="computeroutput"><span class="identifier">S</span></code>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<a name="fusion.functional.adapters.unfused_typed.expression_semantics"></a><h5>
|
||||
<a name="id1218758"></a>
|
||||
<a href="unfused_typed.html#fusion.functional.adapters.unfused_typed.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h5>
|
||||
<div class="informaltable"><table class="table">
|
||||
<colgroup>
|
||||
<col>
|
||||
<col>
|
||||
</colgroup>
|
||||
<thead><tr>
|
||||
<th>Expression</th>
|
||||
<th>Semantics</th>
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><code class="computeroutput"><span class="identifier">UT</span><span class="special">(</span><span class="identifier">f</span><span class="special">)</span></code></td>
|
||||
<td>Creates
|
||||
a fused function as described above, initializes the target function
|
||||
with <code class="computeroutput"><span class="identifier">f</span></code>.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><code class="computeroutput"><span class="identifier">UT</span><span class="special">()</span></code></td>
|
||||
<td>Creates
|
||||
a fused function as described above, attempts to use <code class="computeroutput"><span class="identifier">F</span></code>'s default constructor.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<code class="computeroutput"><span class="identifier">ut</span><span class="special">(</span><span class="identifier">a0</span></code>...<code class="computeroutput"><span class="identifier">aN</span><span class="special">)</span></code>
|
||||
</td>
|
||||
<td>Calls <code class="computeroutput"><span class="identifier">f</span></code> with an instance of <code class="computeroutput"><span class="identifier">S</span></code> (or a subsequence of <code class="computeroutput"><span class="identifier">S</span></code> starting at the first element,
|
||||
if fewer arguments are given and the overload hasn't been disabled)
|
||||
initialized with <code class="computeroutput"><span class="identifier">a0</span></code>...<code class="computeroutput"><span class="identifier">aN</span></code>.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table></div>
|
||||
<a name="fusion.functional.adapters.unfused_typed.example"></a><h5>
|
||||
<a name="id1218958"></a>
|
||||
<a href="unfused_typed.html#fusion.functional.adapters.unfused_typed.example">Example</a>
|
||||
</h5>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">struct</span> <span class="identifier">add_assign</span> <span class="comment">// applies operator+=
|
||||
</span><span class="special">{</span>
|
||||
<span class="keyword">typedef</span> <span class="keyword">void</span> <span class="identifier">result_type</span><span class="special">;</span> <span class="comment">// for simplicity
|
||||
</span>
|
||||
<span class="keyword">template</span> <span class="special"><</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">></span>
|
||||
<span class="keyword">void</span> <span class="keyword">operator</span><span class="special">()(</span><span class="identifier">T</span> <span class="special">&</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">T</span> <span class="keyword">const</span> <span class="special">&</span> <span class="identifier">rhs</span><span class="special">)</span> <span class="keyword">const</span>
|
||||
<span class="special">{</span>
|
||||
<span class="identifier">lhs</span> <span class="special">+=</span> <span class="identifier">rhs</span><span class="special">;</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">Tie</span><span class="special">></span>
|
||||
<span class="keyword">class</span> <span class="identifier">fused_parallel_adder</span>
|
||||
<span class="special">{</span>
|
||||
<span class="identifier">Tie</span> <span class="identifier">tie_dest</span><span class="special">;</span>
|
||||
<span class="keyword">public</span><span class="special">:</span>
|
||||
<span class="keyword">explicit</span> <span class="identifier">fused_parallel_adder</span><span class="special">(</span><span class="identifier">Tie</span> <span class="keyword">const</span> <span class="special">&</span> <span class="identifier">dest</span><span class="special">)</span>
|
||||
<span class="special">:</span> <span class="identifier">tie_dest</span><span class="special">(</span><span class="identifier">dest</span><span class="special">)</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">Seq</span><span class="special">></span>
|
||||
<span class="keyword">struct</span> <span class="identifier">result</span>
|
||||
<span class="special">{</span>
|
||||
<span class="keyword">typedef</span> <span class="keyword">void</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">Seq</span><span class="special">></span>
|
||||
<span class="keyword">void</span> <span class="keyword">operator</span><span class="special">()(</span><span class="identifier">Seq</span> <span class="keyword">const</span> <span class="special">&</span> <span class="identifier">s</span><span class="special">)</span> <span class="keyword">const</span>
|
||||
<span class="special">{</span>
|
||||
<a href="../../algorithms/iteration/functions/for_each.html" title="for_each"><code class="computeroutput"><span class="identifier">for_each</span></code></a><span class="special">(</span><a href="../../algorithms/transformation/functions/zip.html" title="zip"><code class="computeroutput"><span class="identifier">zip</span></code></a><span class="special">(</span><span class="identifier">tie_dest</span><span class="special">,</span><span class="identifier">s</span><span class="special">),</span> <a href="fused.html" title="fused"><code class="computeroutput"><span class="identifier">fused</span></code></a><span class="special"><</span><span class="identifier">add_assign</span><span class="special">>()</span> <span class="special">);</span>
|
||||
<span class="special">}</span>
|
||||
<span class="special">};</span>
|
||||
|
||||
<span class="comment">// accepts a tie and creates a typed function object from it
|
||||
</span><span class="keyword">struct</span> <span class="identifier">fused_parallel_adder_maker</span>
|
||||
<span class="special">{</span>
|
||||
<span class="keyword">template</span> <span class="special"><</span><span class="keyword">class</span> <span class="identifier">Seq</span><span class="special">></span>
|
||||
<span class="keyword">struct</span> <span class="identifier">result</span>
|
||||
<span class="special">{</span>
|
||||
<span class="keyword">typedef</span> <span class="identifier">unfused_typed</span><span class="special"><</span><span class="identifier">fused_parallel_adder</span><span class="special"><</span><span class="identifier">Seq</span><span class="special">>,</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">mpl</span><span class="special">::</span><span class="identifier">transform</span><span class="special"><</span><span class="identifier">Seq</span><span class="special">,</span> <span class="identifier">remove_reference</span><span class="special"><</span><span class="identifier">_</span><span class="special">></span> <span class="special">>::</span><span class="identifier">type</span> <span class="special">></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">Seq</span><span class="special">></span>
|
||||
<span class="keyword">typename</span> <span class="identifier">result</span><span class="special"><</span><span class="identifier">Seq</span><span class="special">>::</span><span class="identifier">type</span> <span class="keyword">operator</span><span class="special">()(</span><span class="identifier">Seq</span> <span class="keyword">const</span> <span class="special">&</span> <span class="identifier">tie</span><span class="special">)</span>
|
||||
<span class="special">{</span>
|
||||
<span class="keyword">return</span> <span class="keyword">typename</span> <span class="identifier">result</span><span class="special"><</span><span class="identifier">Seq</span><span class="special">>::</span><span class="identifier">type</span><span class="special">(</span><span class="identifier">fused_parallel_adder</span><span class="special"><</span><span class="identifier">Seq</span><span class="special">>(</span><span class="identifier">tie</span><span class="special">));</span>
|
||||
<span class="special">}</span>
|
||||
<span class="special">};</span>
|
||||
<a href="unfused_lvalue_args.html" title="unfused_lvalue_args"><code class="computeroutput"><span class="identifier">unfused_lvalue_args</span></code></a><span class="special"><</span><span class="identifier">fused_parallel_adder_maker</span><span class="special">></span> <span class="identifier">parallel_add</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">int</span> <span class="identifier">a</span> <span class="special">=</span> <span class="number">2</span><span class="special">;</span> <span class="keyword">char</span> <span class="identifier">b</span> <span class="special">=</span> <span class="char">'X'</span><span class="special">;</span>
|
||||
<span class="comment">// the second call is strictly typed with the types deduced from the
|
||||
</span> <span class="comment">// first call
|
||||
</span> <span class="identifier">parallel_add</span><span class="special">(</span><span class="identifier">a</span><span class="special">,</span><span class="identifier">b</span><span class="special">)(</span><span class="number">3</span><span class="special">,</span><span class="number">2</span><span class="special">);</span>
|
||||
<span class="identifier">parallel_add</span><span class="special">(</span><span class="identifier">a</span><span class="special">,</span><span class="identifier">b</span><span class="special">)(</span><span class="number">3</span><span class="special">);</span>
|
||||
<span class="identifier">parallel_add</span><span class="special">(</span><span class="identifier">a</span><span class="special">,</span><span class="identifier">b</span><span class="special">)();</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><span class="identifier">a</span> <span class="special">==</span> <span class="number">8</span> <span class="special">&&</span> <span class="identifier">b</span> <span class="special">==</span> <span class="char">'Z'</span><span class="special">);</span>
|
||||
|
||||
<span class="keyword">return</span> <span class="number">0</span><span class="special">;</span>
|
||||
<span class="special">}</span>
|
||||
</pre>
|
||||
<a name="fusion.functional.adapters.unfused_typed.see_also"></a><h5>
|
||||
<a name="id1220201"></a>
|
||||
<a href="unfused_typed.html#fusion.functional.adapters.unfused_typed.see_also">See also</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul type="disc">
|
||||
<li><a href="unfused_generic.html" title="unfused_generic"><code class="computeroutput"><span class="identifier">unfused_generic</span></code></a></li>
|
||||
<li><a href="unfused_lvalue_args.html" title="unfused_lvalue_args"><code class="computeroutput"><span class="identifier">unfused_lvalue_args</span></code></a></li>
|
||||
<li><a href="unfused_rvalue_args.html" title="unfused_rvalue_args"><code class="computeroutput"><span class="identifier">unfused_rvalue_args</span></code></a></li>
|
||||
<li><a href="../../support/deduce.html" title="deduce"><code class="computeroutput"><span class="identifier">deduce</span></code></a></li>
|
||||
<li><a href="../../support/deduce_sequence.html" title="deduce_sequence"><code class="computeroutput"><span class="identifier">deduce_sequence</span></code></a></li>
|
||||
</ul></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"><small>Copyright © 2001-2005 Joel de Guzman, Dan Marsden</small></td>
|
||||
</tr></table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="unfused_rvalue_args.html"><img src="../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../adapters.html"><img src="../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../images/home.png" alt="Home"></a><a accesskey="n" href="../generation.html"><img src="../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,45 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>Concepts</title>
|
||||
<link rel="stylesheet" href="../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../functional.html" title="Functional">
|
||||
<link rel="prev" href="../functional.html" title="Functional">
|
||||
<link rel="next" href="concepts/callable.html" title=" Callable Object">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
||||
<table cellpadding="2" width="100%">
|
||||
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
|
||||
<td align="center"><a href="../../../../../../index.htm">Home</a></td>
|
||||
<td align="center"><a href="../../../../../libraries.htm">Libraries</a></td>
|
||||
<td align="center"><a href="../../../../../../people/people.htm">People</a></td>
|
||||
<td align="center"><a href="../../../../../../more/faq.htm">FAQ</a></td>
|
||||
<td align="center"><a href="../../../../../../more/index.htm">More</a></td>
|
||||
</table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="../functional.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../functional.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="concepts/callable.html"><img src="../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
<div class="section" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="fusion.functional.concepts"></a><a href="concepts.html" title="Concepts">Concepts</a></h3></div></div></div>
|
||||
<div class="toc"><dl>
|
||||
<dt><span class="section"><a href="concepts/callable.html"> Callable Object</a></span></dt>
|
||||
<dt><span class="section"><a href="concepts/poly.html"> Polymorphic Function
|
||||
Object</a></span></dt>
|
||||
<dt><span class="section"><a href="concepts/def_callable.html"> Deferred
|
||||
Callable Object</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"><small>Copyright © 2001-2005 Joel de Guzman, Dan Marsden</small></td>
|
||||
</tr></table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="../functional.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../functional.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="concepts/callable.html"><img src="../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,45 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title> Callable Object</title>
|
||||
<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../concepts.html" title="Concepts">
|
||||
<link rel="prev" href="../concepts.html" title="Concepts">
|
||||
<link rel="next" href="poly.html" title=" Polymorphic Function
|
||||
Object">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
||||
<table cellpadding="2" width="100%">
|
||||
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
|
||||
<td align="center"><a href="../../../../../../../index.htm">Home</a></td>
|
||||
<td align="center"><a href="../../../../../../libraries.htm">Libraries</a></td>
|
||||
<td align="center"><a href="../../../../../../../people/people.htm">People</a></td>
|
||||
<td align="center"><a href="../../../../../../../more/faq.htm">FAQ</a></td>
|
||||
<td align="center"><a href="../../../../../../../more/index.htm">More</a></td>
|
||||
</table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="../concepts.html"><img src="../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../images/home.png" alt="Home"></a><a accesskey="n" href="poly.html"><img src="../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
<div class="section" lang="en">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="fusion.functional.concepts.callable"></a><a href="callable.html" title=" Callable Object"> Callable Object</a></h4></div></div></div>
|
||||
<p>
|
||||
A pointer to a function, a pointer to member function, a pointer to member
|
||||
data, or a class type whose objects can appear immediately to the left
|
||||
of a function call operator.
|
||||
|
||||
</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"><small>Copyright © 2001-2005 Joel de Guzman, Dan Marsden</small></td>
|
||||
</tr></table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="../concepts.html"><img src="../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../images/home.png" alt="Home"></a><a accesskey="n" href="poly.html"><img src="../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,100 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title> Deferred
|
||||
Callable Object</title>
|
||||
<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../concepts.html" title="Concepts">
|
||||
<link rel="prev" href="poly.html" title=" Polymorphic Function
|
||||
Object">
|
||||
<link rel="next" href="../invocation.html" title="Invocation">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
||||
<table cellpadding="2" width="100%">
|
||||
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
|
||||
<td align="center"><a href="../../../../../../../index.htm">Home</a></td>
|
||||
<td align="center"><a href="../../../../../../libraries.htm">Libraries</a></td>
|
||||
<td align="center"><a href="../../../../../../../people/people.htm">People</a></td>
|
||||
<td align="center"><a href="../../../../../../../more/faq.htm">FAQ</a></td>
|
||||
<td align="center"><a href="../../../../../../../more/index.htm">More</a></td>
|
||||
</table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="poly.html"><img src="../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../images/home.png" alt="Home"></a><a accesskey="n" href="../invocation.html"><img src="../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
<div class="section" lang="en">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="fusion.functional.concepts.def_callable"></a><a href="def_callable.html" title=" Deferred
|
||||
Callable Object"> Deferred
|
||||
Callable Object</a></h4></div></div></div>
|
||||
<a name="fusion.functional.concepts.def_callable.description"></a><h5>
|
||||
<a name="id1187418"></a>
|
||||
<a href="def_callable.html#fusion.functional.concepts.def_callable.description">Description</a>
|
||||
</h5>
|
||||
<p>
|
||||
<a href="callable.html" title=" Callable Object">Callable Object</a>
|
||||
that works with <a href="http://www.boost.org/libs/utility/utility.htm#result_of" target="_top">Boost.ResultOf</a>
|
||||
to determine the result of a call (such as the function objects provided
|
||||
by the standard library).
|
||||
</p>
|
||||
<a name="fusion.functional.concepts.def_callable.refinement_of"></a><h5>
|
||||
<a name="id1187461"></a>
|
||||
<a href="def_callable.html#fusion.functional.concepts.def_callable.refinement_of">Refinement
|
||||
of</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul type="disc"><li><a href="callable.html" title=" Callable Object">Callable Object</a></li></ul></div>
|
||||
<div class="variablelist">
|
||||
<p class="title"><b>Notation</b></p>
|
||||
<dl>
|
||||
<dt><span class="term"><code class="computeroutput"><span class="identifier">F</span></code></span></dt>
|
||||
<dd>
|
||||
A Deferred Callable Object type
|
||||
</dd>
|
||||
<dt><span class="term"><code class="computeroutput"><span class="identifier">T1</span>
|
||||
<span class="special">...</span><span class="identifier">TN</span></code></span></dt>
|
||||
<dd>
|
||||
Arbitrary types
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<a name="fusion.functional.concepts.def_callable.expression_requirements"></a><h5>
|
||||
<a name="id1187547"></a>
|
||||
<a href="def_callable.html#fusion.functional.concepts.def_callable.expression_requirements">Expression
|
||||
requirements</a>
|
||||
</h5>
|
||||
<div class="informaltable"><table class="table">
|
||||
<colgroup>
|
||||
<col>
|
||||
<col>
|
||||
</colgroup>
|
||||
<thead><tr>
|
||||
<th>Expression</th>
|
||||
<th>Type</th>
|
||||
</tr></thead>
|
||||
<tbody><tr>
|
||||
<td>
|
||||
<a href="http://www.boost.org/libs/utility/utility.htm#result_of" target="_top"><code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">result_of</span></code></a><code class="computeroutput"><span class="special"><</span> <span class="identifier">F</span><span class="special">(</span><span class="identifier">T1</span> <span class="special">...</span><span class="identifier">TN</span><span class="special">)</span> <span class="special">>::</span><span class="identifier">type</span></code>
|
||||
</td>
|
||||
<td>Unspecified</td>
|
||||
</tr></tbody>
|
||||
</table></div>
|
||||
<a name="fusion.functional.concepts.def_callable.models"></a><h5>
|
||||
<a name="id1187671"></a>
|
||||
<a href="def_callable.html#fusion.functional.concepts.def_callable.models">Models</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul type="disc"><li>
|
||||
all Fusion <a href="../adapters.html" title=" Adapters">functional adapters</a>
|
||||
</li></ul></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"><small>Copyright © 2001-2005 Joel de Guzman, Dan Marsden</small></td>
|
||||
</tr></table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="poly.html"><img src="../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../images/home.png" alt="Home"></a><a accesskey="n" href="../invocation.html"><img src="../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,110 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title> Polymorphic Function
|
||||
Object</title>
|
||||
<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../concepts.html" title="Concepts">
|
||||
<link rel="prev" href="callable.html" title=" Callable Object">
|
||||
<link rel="next" href="def_callable.html" title=" Deferred
|
||||
Callable Object">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
||||
<table cellpadding="2" width="100%">
|
||||
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
|
||||
<td align="center"><a href="../../../../../../../index.htm">Home</a></td>
|
||||
<td align="center"><a href="../../../../../../libraries.htm">Libraries</a></td>
|
||||
<td align="center"><a href="../../../../../../../people/people.htm">People</a></td>
|
||||
<td align="center"><a href="../../../../../../../more/faq.htm">FAQ</a></td>
|
||||
<td align="center"><a href="../../../../../../../more/index.htm">More</a></td>
|
||||
</table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="callable.html"><img src="../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../images/home.png" alt="Home"></a><a accesskey="n" href="def_callable.html"><img src="../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
<div class="section" lang="en">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="fusion.functional.concepts.poly"></a><a href="poly.html" title=" Polymorphic Function
|
||||
Object"> Polymorphic Function
|
||||
Object</a></h4></div></div></div>
|
||||
<a name="fusion.functional.concepts.poly.description"></a><h5>
|
||||
<a name="id1187028"></a>
|
||||
<a href="poly.html#fusion.functional.concepts.poly.description">Description</a>
|
||||
</h5>
|
||||
<p>
|
||||
A type of function object with a nested metafunction <code class="computeroutput"><span class="identifier">result</span></code>.
|
||||
<code class="computeroutput"><span class="identifier">result</span></code> returns the result
|
||||
type of calling the function object, given the argument types.
|
||||
</p>
|
||||
<a name="fusion.functional.concepts.poly.refinement_of"></a><h5>
|
||||
<a name="id1187074"></a>
|
||||
<a href="poly.html#fusion.functional.concepts.poly.refinement_of">Refinement
|
||||
of</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul type="disc"><li><a href="callable.html" title=" Callable Object">Callable Object</a></li></ul></div>
|
||||
<div class="variablelist">
|
||||
<p class="title"><b>Notation</b></p>
|
||||
<dl>
|
||||
<dt><span class="term"><code class="computeroutput"><span class="identifier">F</span></code></span></dt>
|
||||
<dd>
|
||||
A Polymorphic Function Object type
|
||||
</dd>
|
||||
<dt><span class="term"><code class="computeroutput"><span class="identifier">f</span></code></span></dt>
|
||||
<dd>
|
||||
A Polymorphic Function Object
|
||||
</dd>
|
||||
<dt><span class="term"><code class="computeroutput"><span class="identifier">T1</span>
|
||||
<span class="special">...</span><span class="identifier">TN</span></code></span></dt>
|
||||
<dd>
|
||||
Arbitrary types
|
||||
</dd>
|
||||
<dt><span class="term"><code class="computeroutput"><span class="identifier">t1</span>
|
||||
<span class="special">...</span><span class="identifier">tN</span></code></span></dt>
|
||||
<dd>
|
||||
Objects with types <code class="computeroutput"><span class="identifier">T1</span> <span class="special">...</span><span class="identifier">TN</span></code>
|
||||
</dd>
|
||||
</dl>
|
||||
</div>
|
||||
<a name="fusion.functional.concepts.poly.expression_requirements"></a><h5>
|
||||
<a name="id1187218"></a>
|
||||
<a href="poly.html#fusion.functional.concepts.poly.expression_requirements">Expression
|
||||
requirements</a>
|
||||
</h5>
|
||||
<div class="informaltable"><table class="table">
|
||||
<colgroup>
|
||||
<col>
|
||||
<col>
|
||||
<col>
|
||||
</colgroup>
|
||||
<thead><tr>
|
||||
<th>Expression</th>
|
||||
<th>Return Type</th>
|
||||
<th>Runtime
|
||||
Complexity</th>
|
||||
</tr></thead>
|
||||
<tbody><tr>
|
||||
<td><code class="computeroutput"><span class="identifier">f</span><span class="special">(</span><span class="identifier">t1</span><span class="special">,</span> <span class="special">...</span><span class="identifier">tN</span><span class="special">)</span></code></td>
|
||||
<td><code class="computeroutput"><span class="identifier">F</span><span class="special">::</span><span class="identifier">result</span><span class="special"><</span><span class="identifier">T1</span><span class="special">,</span> <span class="special">...</span><span class="identifier">TN</span><span class="special">>::</span><span class="identifier">type</span></code></td>
|
||||
<td>Unspecified</td>
|
||||
</tr></tbody>
|
||||
</table></div>
|
||||
<a name="fusion.functional.concepts.poly.models"></a><h5>
|
||||
<a name="id1187362"></a>
|
||||
<a href="poly.html#fusion.functional.concepts.poly.models">Models</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul type="disc"><li>
|
||||
all Fusion <a href="../adapters.html" title=" Adapters">functional adapters</a>
|
||||
</li></ul></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"><small>Copyright © 2001-2005 Joel de Guzman, Dan Marsden</small></td>
|
||||
</tr></table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="callable.html"><img src="../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../images/home.png" alt="Home"></a><a accesskey="n" href="def_callable.html"><img src="../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,58 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>Generation</title>
|
||||
<link rel="stylesheet" href="../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../functional.html" title="Functional">
|
||||
<link rel="prev" href="adapters/unfused_typed.html" title="unfused_typed">
|
||||
<link rel="next" href="generation/functions.html" title="Functions">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
||||
<table cellpadding="2" width="100%">
|
||||
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
|
||||
<td align="center"><a href="../../../../../../index.htm">Home</a></td>
|
||||
<td align="center"><a href="../../../../../libraries.htm">Libraries</a></td>
|
||||
<td align="center"><a href="../../../../../../people/people.htm">People</a></td>
|
||||
<td align="center"><a href="../../../../../../more/faq.htm">FAQ</a></td>
|
||||
<td align="center"><a href="../../../../../../more/index.htm">More</a></td>
|
||||
</table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="adapters/unfused_typed.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../functional.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="generation/functions.html"><img src="../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
<div class="section" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="fusion.functional.generation"></a><a href="generation.html" title="Generation">Generation</a></h3></div></div></div>
|
||||
<div class="toc"><dl>
|
||||
<dt><span class="section"><a href="generation/functions.html">Functions</a></span></dt>
|
||||
<dd><dl>
|
||||
<dt><span class="section"><a href="generation/functions/make_fused.html">make_fused</a></span></dt>
|
||||
<dt><span class="section"><a href="generation/functions/make_fused_procedure.html">make_fused_procedure</a></span></dt>
|
||||
<dt><span class="section"><a href="generation/functions/make_fused_function_object.html">make_fused_function_object</a></span></dt>
|
||||
<dt><span class="section"><a href="generation/functions/make_unfused_generic.html">make_unfused_generic</a></span></dt>
|
||||
<dt><span class="section"><a href="generation/functions/make_unfused_lvalue_args.html">make_unfused_lvalue_args</a></span></dt>
|
||||
<dt><span class="section"><a href="generation/functions/make_unfused_rvalue_args.html">make_unfused_rvalue_args</a></span></dt>
|
||||
</dl></dd>
|
||||
<dt><span class="section"><a href="generation/metafunctions.html">Metafunctions</a></span></dt>
|
||||
<dd><dl>
|
||||
<dt><span class="section"><a href="generation/metafunctions/make_fused.html">make_fused</a></span></dt>
|
||||
<dt><span class="section"><a href="generation/metafunctions/make_fused_procedure.html">make_fused_procedure</a></span></dt>
|
||||
<dt><span class="section"><a href="generation/metafunctions/make_fused_function_object.html">make_fused_function_object</a></span></dt>
|
||||
<dt><span class="section"><a href="generation/metafunctions/make_unfused_generic.html">make_unfused_generic</a></span></dt>
|
||||
<dt><span class="section"><a href="generation/metafunctions/make_unfused_lvalue_args.html">make_unfused_lvalue_args</a></span></dt>
|
||||
<dt><span class="section"><a href="generation/metafunctions/make_unfused_rvalue_args.html">make_unfused_rvalue_args</a></span></dt>
|
||||
</dl></dd>
|
||||
</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"><small>Copyright © 2001-2005 Joel de Guzman, Dan Marsden</small></td>
|
||||
</tr></table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="adapters/unfused_typed.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../functional.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="generation/functions.html"><img src="../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,46 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>Functions</title>
|
||||
<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../generation.html" title="Generation">
|
||||
<link rel="prev" href="../generation.html" title="Generation">
|
||||
<link rel="next" href="functions/make_fused.html" title="make_fused">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
||||
<table cellpadding="2" width="100%">
|
||||
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
|
||||
<td align="center"><a href="../../../../../../../index.htm">Home</a></td>
|
||||
<td align="center"><a href="../../../../../../libraries.htm">Libraries</a></td>
|
||||
<td align="center"><a href="../../../../../../../people/people.htm">People</a></td>
|
||||
<td align="center"><a href="../../../../../../../more/faq.htm">FAQ</a></td>
|
||||
<td align="center"><a href="../../../../../../../more/index.htm">More</a></td>
|
||||
</table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="../generation.html"><img src="../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../generation.html"><img src="../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../images/home.png" alt="Home"></a><a accesskey="n" href="functions/make_fused.html"><img src="../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
<div class="section" lang="en">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="fusion.functional.generation.functions"></a><a href="functions.html" title="Functions">Functions</a></h4></div></div></div>
|
||||
<div class="toc"><dl>
|
||||
<dt><span class="section"><a href="functions/make_fused.html">make_fused</a></span></dt>
|
||||
<dt><span class="section"><a href="functions/make_fused_procedure.html">make_fused_procedure</a></span></dt>
|
||||
<dt><span class="section"><a href="functions/make_fused_function_object.html">make_fused_function_object</a></span></dt>
|
||||
<dt><span class="section"><a href="functions/make_unfused_generic.html">make_unfused_generic</a></span></dt>
|
||||
<dt><span class="section"><a href="functions/make_unfused_lvalue_args.html">make_unfused_lvalue_args</a></span></dt>
|
||||
<dt><span class="section"><a href="functions/make_unfused_rvalue_args.html">make_unfused_rvalue_args</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"><small>Copyright © 2001-2005 Joel de Guzman, Dan Marsden</small></td>
|
||||
</tr></table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="../generation.html"><img src="../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../generation.html"><img src="../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../images/home.png" alt="Home"></a><a accesskey="n" href="functions/make_fused.html"><img src="../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,129 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>make_fused</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../functions.html" title="Functions">
|
||||
<link rel="prev" href="../functions.html" title="Functions">
|
||||
<link rel="next" href="make_fused_procedure.html" title="make_fused_procedure">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
||||
<table cellpadding="2" width="100%">
|
||||
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
|
||||
<td align="center"><a href="../../../../../../../../index.htm">Home</a></td>
|
||||
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
|
||||
<td align="center"><a href="../../../../../../../../people/people.htm">People</a></td>
|
||||
<td align="center"><a href="../../../../../../../../more/faq.htm">FAQ</a></td>
|
||||
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
|
||||
</table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="../functions.html"><img src="../../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../images/home.png" alt="Home"></a><a accesskey="n" href="make_fused_procedure.html"><img src="../../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
<div class="section" lang="en">
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.functional.generation.functions.make_fused"></a><a href="make_fused.html" title="make_fused">make_fused</a></h5></div></div></div>
|
||||
<a name="fusion.functional.generation.functions.make_fused.description"></a><h6>
|
||||
<a name="id1220368"></a>
|
||||
<a href="make_fused.html#fusion.functional.generation.functions.make_fused.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
Creates a <a href="../../adapters/fused.html" title="fused"><code class="computeroutput"><span class="identifier">fused</span></code></a> adapter for a given <a href="../../concepts/def_callable.html" title=" Deferred
|
||||
Callable Object">Deferred Callable Object</a>.
|
||||
The usual <a href="../../../notes.html#fusion.notes.element_conversion"><span class="emphasis"><em>element
|
||||
conversion</em></span></a> is applied to the target function.
|
||||
</p>
|
||||
<a name="fusion.functional.generation.functions.make_fused.synopsis"></a><h6>
|
||||
<a name="id1220428"></a>
|
||||
<a href="make_fused.html#fusion.functional.generation.functions.make_fused.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">template</span> <span class="special"><</span><span class="keyword">typename</span> <span class="identifier">F</span><span class="special">></span>
|
||||
<span class="keyword">inline</span> <span class="keyword">typename</span> <a href="../metafunctions/make_fused.html" title="make_fused"><code class="computeroutput"><span class="identifier">make_fused</span></code></a><span class="special"><</span><span class="identifier">F</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<span class="identifier">make_fused</span><span class="special">(</span><span class="identifier">F</span> <span class="keyword">const</span> <span class="special">&</span> <span class="identifier">f</span><span class="special">);</span>
|
||||
</pre>
|
||||
<a name="fusion.functional.generation.functions.make_fused.parameters"></a><h6>
|
||||
<a name="id1220562"></a>
|
||||
<a href="make_fused.html#fusion.functional.generation.functions.make_fused.parameters">Parameters</a>
|
||||
</h6>
|
||||
<div class="informaltable"><table class="table">
|
||||
<colgroup>
|
||||
<col>
|
||||
<col>
|
||||
<col>
|
||||
</colgroup>
|
||||
<thead><tr>
|
||||
<th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
</tr></thead>
|
||||
<tbody><tr>
|
||||
<td><code class="computeroutput"><span class="identifier">f</span></code></td>
|
||||
<td>Model
|
||||
of <a href="../../concepts/def_callable.html" title=" Deferred
|
||||
Callable Object">Deferred
|
||||
Callable Object</a>
|
||||
</td>
|
||||
<td>The function to transform.</td>
|
||||
</tr></tbody>
|
||||
</table></div>
|
||||
<a name="fusion.functional.generation.functions.make_fused.expression_semantics"></a><h6>
|
||||
<a name="id1220641"></a>
|
||||
<a href="make_fused.html#fusion.functional.generation.functions.make_fused.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="identifier">make_fused</span><span class="special">(</span><span class="identifier">f</span><span class="special">);</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><strong>Return type</strong></span>: A specialization of <a href="../../adapters/fused.html" title="fused"><code class="computeroutput"><span class="identifier">fused</span></code></a>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns a <a href="../../adapters/fused.html" title="fused"><code class="computeroutput"><span class="identifier">fused</span></code></a> adapter for <code class="computeroutput"><span class="identifier">f</span></code>.
|
||||
</p>
|
||||
<a name="fusion.functional.generation.functions.make_fused.header"></a><h6>
|
||||
<a name="id1220745"></a>
|
||||
<a href="make_fused.html#fusion.functional.generation.functions.make_fused.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">functional</span><span class="special">/</span><span class="identifier">generation</span><span class="special">/</span><span class="identifier">make_fused</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.functional.generation.functions.make_fused.example"></a><h6>
|
||||
<a name="id1220837"></a>
|
||||
<a href="make_fused.html#fusion.functional.generation.functions.make_fused.example">Example</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">float</span> <span class="identifier">sub</span><span class="special">(</span><span class="keyword">float</span> <span class="identifier">a</span><span class="special">,</span> <span class="keyword">float</span> <span class="identifier">b</span><span class="special">)</span> <span class="special">{</span> <span class="keyword">return</span> <span class="identifier">a</span> <span class="special">-</span> <span class="identifier">b</span><span class="special">;</span> <span class="special">}</span>
|
||||
|
||||
<span class="keyword">void</span> <span class="identifier">try_it</span><span class="special">()</span>
|
||||
<span class="special">{</span>
|
||||
<a href="../../../sequences/containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special"><</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">float</span><span class="special">></span> <span class="identifier">a</span><span class="special">(</span><span class="number">2</span><span class="special">,</span><span class="number">2.0f</span><span class="special">);</span>
|
||||
<a href="../../../sequences/containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special"><</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">float</span><span class="special">></span> <span class="identifier">b</span><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">1.5f</span><span class="special">);</span>
|
||||
<a href="../../../sequences/containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special"><</span><span class="keyword">float</span><span class="special">,</span><span class="keyword">float</span><span class="special">></span> <span class="identifier">c</span><span class="special">(</span><span class="number">1.0f</span><span class="special">,</span><span class="number">0.5f</span><span class="special">);</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><span class="identifier">c</span> <span class="special">==</span> <a href="../../../algorithms/transformation/functions/transform.html" title="transform"><code class="computeroutput"><span class="identifier">transform</span></code></a><span class="special">(</span><a href="../../../algorithms/transformation/functions/zip.html" title="zip"><code class="computeroutput"><span class="identifier">zip</span></code></a><span class="special">(</span><span class="identifier">a</span><span class="special">,</span><span class="identifier">b</span><span class="special">),</span> <span class="identifier">make_fused</span><span class="special">(&</span> <span class="identifier">sub</span><span class="special">)));</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><span class="identifier">c</span> <span class="special">==</span> <a href="../../../algorithms/transformation/functions/transform.html" title="transform"><code class="computeroutput"><span class="identifier">transform</span></code></a><span class="special">(</span><a href="../../../algorithms/transformation/functions/zip.html" title="zip"><code class="computeroutput"><span class="identifier">zip</span></code></a><span class="special">(</span><span class="identifier">a</span><span class="special">,</span><span class="identifier">b</span><span class="special">),</span> <span class="identifier">make_fused</span><span class="special">(</span><a href="http://www.sgi.com/tech/stl/minus.html" target="_top"><code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">minus</span></code></a><span class="special"><</span><span class="keyword">float</span><span class="special">>())));</span>
|
||||
<span class="special">}</span>
|
||||
</pre>
|
||||
<a name="fusion.functional.generation.functions.make_fused.see_also"></a><h6>
|
||||
<a name="id1221372"></a>
|
||||
<a href="make_fused.html#fusion.functional.generation.functions.make_fused.see_also">See
|
||||
also</a>
|
||||
</h6>
|
||||
<div class="itemizedlist"><ul type="disc">
|
||||
<li><a href="../../adapters/fused.html" title="fused"><code class="computeroutput"><span class="identifier">fused</span></code></a></li>
|
||||
<li><a href="../../../support/deduce.html" title="deduce"><code class="computeroutput"><span class="identifier">deduce</span></code></a></li>
|
||||
<li><a href="../metafunctions/make_fused.html" title="make_fused"><code class="computeroutput"><span class="identifier">make_fused</span></code></a></li>
|
||||
</ul></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"><small>Copyright © 2001-2005 Joel de Guzman, Dan Marsden</small></td>
|
||||
</tr></table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="../functions.html"><img src="../../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../images/home.png" alt="Home"></a><a accesskey="n" href="make_fused_procedure.html"><img src="../../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,143 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>make_fused_function_object</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../functions.html" title="Functions">
|
||||
<link rel="prev" href="make_fused_procedure.html" title="make_fused_procedure">
|
||||
<link rel="next" href="make_unfused_generic.html" title="make_unfused_generic">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
||||
<table cellpadding="2" width="100%">
|
||||
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
|
||||
<td align="center"><a href="../../../../../../../../index.htm">Home</a></td>
|
||||
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
|
||||
<td align="center"><a href="../../../../../../../../people/people.htm">People</a></td>
|
||||
<td align="center"><a href="../../../../../../../../more/faq.htm">FAQ</a></td>
|
||||
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
|
||||
</table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="make_fused_procedure.html"><img src="../../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../images/home.png" alt="Home"></a><a accesskey="n" href="make_unfused_generic.html"><img src="../../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
<div class="section" lang="en">
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.functional.generation.functions.make_fused_function_object"></a><a href="make_fused_function_object.html" title="make_fused_function_object">make_fused_function_object</a></h5></div></div></div>
|
||||
<a name="fusion.functional.generation.functions.make_fused_function_object.description"></a><h6>
|
||||
<a name="id1222293"></a>
|
||||
<a href="make_fused_function_object.html#fusion.functional.generation.functions.make_fused_function_object.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
Creates a <a href="../../adapters/fused_function_object.html" title="fused_function_object"><code class="computeroutput"><span class="identifier">fused_function_object</span></code></a> adapter
|
||||
for a given <a href="../../concepts/def_callable.html" title=" Deferred
|
||||
Callable Object">Deferred
|
||||
Callable Object</a>. The usual <a href="../../../notes.html#fusion.notes.element_conversion"><span class="emphasis"><em>element
|
||||
conversion</em></span></a> is applied to the target function.
|
||||
</p>
|
||||
<a name="fusion.functional.generation.functions.make_fused_function_object.synopsis"></a><h6>
|
||||
<a name="id1222355"></a>
|
||||
<a href="make_fused_function_object.html#fusion.functional.generation.functions.make_fused_function_object.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">template</span> <span class="special"><</span><span class="keyword">typename</span> <span class="identifier">F</span><span class="special">></span>
|
||||
<span class="keyword">inline</span> <span class="keyword">typename</span> <a href="../metafunctions/make_fused_function_object.html" title="make_fused_function_object"><code class="computeroutput"><span class="identifier">make_fused_function_object</span></code></a><span class="special"><</span><span class="identifier">F</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<span class="identifier">make_fused_function_object</span><span class="special">(</span><span class="identifier">F</span> <span class="keyword">const</span> <span class="special">&</span> <span class="identifier">f</span><span class="special">);</span>
|
||||
</pre>
|
||||
<a name="fusion.functional.generation.functions.make_fused_function_object.parameters"></a><h6>
|
||||
<a name="id1222493"></a>
|
||||
<a href="make_fused_function_object.html#fusion.functional.generation.functions.make_fused_function_object.parameters">Parameters</a>
|
||||
</h6>
|
||||
<div class="informaltable"><table class="table">
|
||||
<colgroup>
|
||||
<col>
|
||||
<col>
|
||||
<col>
|
||||
</colgroup>
|
||||
<thead><tr>
|
||||
<th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
</tr></thead>
|
||||
<tbody><tr>
|
||||
<td><code class="computeroutput"><span class="identifier">f</span></code></td>
|
||||
<td>Model
|
||||
of <a href="../../concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic
|
||||
Function Object</a>
|
||||
</td>
|
||||
<td>The function to transform.</td>
|
||||
</tr></tbody>
|
||||
</table></div>
|
||||
<a name="fusion.functional.generation.functions.make_fused_function_object.expression_semantics"></a><h6>
|
||||
<a name="id1222572"></a>
|
||||
<a href="make_fused_function_object.html#fusion.functional.generation.functions.make_fused_function_object.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="identifier">make_fused_function_object</span><span class="special">(</span><span class="identifier">f</span><span class="special">);</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><strong>Return type</strong></span>: A specialization of <a href="../../adapters/fused_function_object.html" title="fused_function_object"><code class="computeroutput"><span class="identifier">fused_function_object</span></code></a>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns a <a href="../../adapters/fused_function_object.html" title="fused_function_object"><code class="computeroutput"><span class="identifier">fused_function_object</span></code></a> adapter
|
||||
for <code class="computeroutput"><span class="identifier">f</span></code>.
|
||||
</p>
|
||||
<a name="fusion.functional.generation.functions.make_fused_function_object.header"></a><h6>
|
||||
<a name="id1222681"></a>
|
||||
<a href="make_fused_function_object.html#fusion.functional.generation.functions.make_fused_function_object.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">functional</span><span class="special">/</span><span class="identifier">generation</span><span class="special">/</span><span class="identifier">make_fused_function_object</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.functional.generation.functions.make_fused_function_object.example"></a><h6>
|
||||
<a name="id1222775"></a>
|
||||
<a href="make_fused_function_object.html#fusion.functional.generation.functions.make_fused_function_object.example">Example</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">struct</span> <span class="identifier">sub</span>
|
||||
<span class="special">{</span>
|
||||
<span class="keyword">template</span><span class="special"><</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">_</span><span class="special">></span>
|
||||
<span class="keyword">struct</span> <span class="identifier">result</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">typename</span> <span class="identifier">T</span><span class="special">></span>
|
||||
<span class="identifier">T</span> <span class="keyword">operator</span><span class="special">()(</span><span class="identifier">T</span> <span class="identifier">lhs</span><span class="special">,</span> <span class="identifier">T</span> <span class="identifier">rhs</span><span class="special">)</span> <span class="keyword">const</span>
|
||||
<span class="special">{</span>
|
||||
<span class="keyword">return</span> <span class="identifier">lhs</span> <span class="special">-</span> <span class="identifier">rhs</span><span class="special">;</span>
|
||||
<span class="special">}</span>
|
||||
<span class="special">};</span>
|
||||
|
||||
<span class="keyword">void</span> <span class="identifier">try_it</span><span class="special">()</span>
|
||||
<span class="special">{</span>
|
||||
<a href="../../../sequences/containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special"><</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">float</span><span class="special">></span> <span class="identifier">a</span><span class="special">(</span><span class="number">2</span><span class="special">,</span><span class="number">2.0f</span><span class="special">);</span>
|
||||
<a href="../../../sequences/containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special"><</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">float</span><span class="special">></span> <span class="identifier">b</span><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">1.5f</span><span class="special">);</span>
|
||||
<a href="../../../sequences/containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special"><</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">float</span><span class="special">></span> <span class="identifier">c</span><span class="special">(</span><span class="number">1</span><span class="special">,</span><span class="number">0.5f</span><span class="special">);</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><span class="identifier">c</span> <span class="special">==</span> <a href="../../../algorithms/transformation/functions/transform.html" title="transform"><code class="computeroutput"><span class="identifier">transform</span></code></a><span class="special">(</span><a href="../../../algorithms/transformation/functions/zip.html" title="zip"><code class="computeroutput"><span class="identifier">zip</span></code></a><span class="special">(</span><span class="identifier">a</span><span class="special">,</span><span class="identifier">b</span><span class="special">),</span> <span class="identifier">make_fused_function_object</span><span class="special">(</span><span class="identifier">sub</span><span class="special">())));</span>
|
||||
<span class="special">}</span>
|
||||
</pre>
|
||||
<a name="fusion.functional.generation.functions.make_fused_function_object.see_also"></a><h6>
|
||||
<a name="id1223328"></a>
|
||||
<a href="make_fused_function_object.html#fusion.functional.generation.functions.make_fused_function_object.see_also">See
|
||||
also</a>
|
||||
</h6>
|
||||
<div class="itemizedlist"><ul type="disc">
|
||||
<li><a href="../../adapters/fused_function_object.html" title="fused_function_object"><code class="computeroutput"><span class="identifier">fused_function_object</span></code></a></li>
|
||||
<li><a href="../../../support/deduce.html" title="deduce"><code class="computeroutput"><span class="identifier">deduce</span></code></a></li>
|
||||
<li><a href="../metafunctions/make_fused_function_object.html" title="make_fused_function_object"><code class="computeroutput"><span class="identifier">make_fused_function_object</span></code></a></li>
|
||||
</ul></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"><small>Copyright © 2001-2005 Joel de Guzman, Dan Marsden</small></td>
|
||||
</tr></table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="make_fused_procedure.html"><img src="../../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../images/home.png" alt="Home"></a><a accesskey="n" href="make_unfused_generic.html"><img src="../../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,124 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>make_fused_procedure</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../functions.html" title="Functions">
|
||||
<link rel="prev" href="make_fused.html" title="make_fused">
|
||||
<link rel="next" href="make_fused_function_object.html" title="make_fused_function_object">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
||||
<table cellpadding="2" width="100%">
|
||||
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
|
||||
<td align="center"><a href="../../../../../../../../index.htm">Home</a></td>
|
||||
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
|
||||
<td align="center"><a href="../../../../../../../../people/people.htm">People</a></td>
|
||||
<td align="center"><a href="../../../../../../../../more/faq.htm">FAQ</a></td>
|
||||
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
|
||||
</table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="make_fused.html"><img src="../../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../images/home.png" alt="Home"></a><a accesskey="n" href="make_fused_function_object.html"><img src="../../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
<div class="section" lang="en">
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.functional.generation.functions.make_fused_procedure"></a><a href="make_fused_procedure.html" title="make_fused_procedure">make_fused_procedure</a></h5></div></div></div>
|
||||
<a name="fusion.functional.generation.functions.make_fused_procedure.description"></a><h6>
|
||||
<a name="id1221473"></a>
|
||||
<a href="make_fused_procedure.html#fusion.functional.generation.functions.make_fused_procedure.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
Creates a <a href="../../adapters/fused_procedure.html" title="fused_procedure"><code class="computeroutput"><span class="identifier">fused_procedure</span></code></a> adapter for
|
||||
a given <a href="../../concepts/def_callable.html" title=" Deferred
|
||||
Callable Object">Deferred
|
||||
Callable Object</a>. The usual <a href="../../../notes.html#fusion.notes.element_conversion"><span class="emphasis"><em>element
|
||||
conversion</em></span></a> applied to the target function.
|
||||
</p>
|
||||
<a name="fusion.functional.generation.functions.make_fused_procedure.synopsis"></a><h6>
|
||||
<a name="id1221535"></a>
|
||||
<a href="make_fused_procedure.html#fusion.functional.generation.functions.make_fused_procedure.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">template</span> <span class="special"><</span><span class="keyword">typename</span> <span class="identifier">F</span><span class="special">></span>
|
||||
<span class="keyword">inline</span> <span class="keyword">typename</span> <a href="../metafunctions/make_fused_procedure.html" title="make_fused_procedure"><code class="computeroutput"><span class="identifier">make_fused_procedure</span></code></a><span class="special"><</span><span class="identifier">F</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<span class="identifier">make_fused_procedure</span><span class="special">(</span><span class="identifier">F</span> <span class="keyword">const</span> <span class="special">&</span> <span class="identifier">f</span><span class="special">);</span>
|
||||
</pre>
|
||||
<a name="fusion.functional.generation.functions.make_fused_procedure.parameters"></a><h6>
|
||||
<a name="id1221672"></a>
|
||||
<a href="make_fused_procedure.html#fusion.functional.generation.functions.make_fused_procedure.parameters">Parameters</a>
|
||||
</h6>
|
||||
<div class="informaltable"><table class="table">
|
||||
<colgroup>
|
||||
<col>
|
||||
<col>
|
||||
<col>
|
||||
</colgroup>
|
||||
<thead><tr>
|
||||
<th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
</tr></thead>
|
||||
<tbody><tr>
|
||||
<td><code class="computeroutput"><span class="identifier">f</span></code></td>
|
||||
<td>Model
|
||||
of <a href="../../concepts/callable.html" title=" Callable Object">Callable
|
||||
Object</a>
|
||||
</td>
|
||||
<td>The function to transform.</td>
|
||||
</tr></tbody>
|
||||
</table></div>
|
||||
<a name="fusion.functional.generation.functions.make_fused_procedure.expression_semantics"></a><h6>
|
||||
<a name="id1221752"></a>
|
||||
<a href="make_fused_procedure.html#fusion.functional.generation.functions.make_fused_procedure.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="identifier">make_fused_procedure</span><span class="special">(</span><span class="identifier">f</span><span class="special">);</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><strong>Return type</strong></span>: A specialization of <a href="../../adapters/fused_procedure.html" title="fused_procedure"><code class="computeroutput"><span class="identifier">fused_procedure</span></code></a>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns a <a href="../../adapters/fused_procedure.html" title="fused_procedure"><code class="computeroutput"><span class="identifier">fused_procedure</span></code></a> adapter for
|
||||
<code class="computeroutput"><span class="identifier">f</span></code>.
|
||||
</p>
|
||||
<a name="fusion.functional.generation.functions.make_fused_procedure.header"></a><h6>
|
||||
<a name="id1221857"></a>
|
||||
<a href="make_fused_procedure.html#fusion.functional.generation.functions.make_fused_procedure.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">functional</span><span class="special">/</span><span class="identifier">generation</span><span class="special">/</span><span class="identifier">make_fused_procedure</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.functional.generation.functions.make_fused_procedure.example"></a><h6>
|
||||
<a name="id1221952"></a>
|
||||
<a href="make_fused_procedure.html#fusion.functional.generation.functions.make_fused_procedure.example">Example</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<a href="../../../sequences/containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special"><</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">></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="keyword">using</span> <span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">lambda</span><span class="special">;</span>
|
||||
<span class="identifier">make_fused_procedure</span><span class="special">(</span><span class="identifier">_1</span> <span class="special">+=</span> <span class="identifier">_2</span> <span class="special">-</span> <span class="identifier">_3</span><span class="special">)(</span><span class="identifier">v</span><span class="special">);</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><a href="../../../sequences/intrinsics/functions/front.html" title="front"><code class="computeroutput"><span class="identifier">front</span></code></a><span class="special">(</span><span class="identifier">v</span><span class="special">)</span> <span class="special">==</span> <span class="number">0</span><span class="special">);</span>
|
||||
</pre>
|
||||
<a name="fusion.functional.generation.functions.make_fused_procedure.see_also"></a><h6>
|
||||
<a name="id1222190"></a>
|
||||
<a href="make_fused_procedure.html#fusion.functional.generation.functions.make_fused_procedure.see_also">See
|
||||
also</a>
|
||||
</h6>
|
||||
<div class="itemizedlist"><ul type="disc">
|
||||
<li><a href="../../adapters/fused_procedure.html" title="fused_procedure"><code class="computeroutput"><span class="identifier">fused_procedure</span></code></a></li>
|
||||
<li><a href="../../../support/deduce.html" title="deduce"><code class="computeroutput"><span class="identifier">deduce</span></code></a></li>
|
||||
<li><a href="../metafunctions/make_fused_procedure.html" title="make_fused_procedure"><code class="computeroutput"><span class="identifier">make_fused_procedure</span></code></a></li>
|
||||
</ul></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"><small>Copyright © 2001-2005 Joel de Guzman, Dan Marsden</small></td>
|
||||
</tr></table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="make_fused.html"><img src="../../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../images/home.png" alt="Home"></a><a accesskey="n" href="make_fused_function_object.html"><img src="../../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,155 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>make_unfused_generic</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../functions.html" title="Functions">
|
||||
<link rel="prev" href="make_fused_function_object.html" title="make_fused_function_object">
|
||||
<link rel="next" href="make_unfused_lvalue_args.html" title="make_unfused_lvalue_args">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
||||
<table cellpadding="2" width="100%">
|
||||
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
|
||||
<td align="center"><a href="../../../../../../../../index.htm">Home</a></td>
|
||||
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
|
||||
<td align="center"><a href="../../../../../../../../people/people.htm">People</a></td>
|
||||
<td align="center"><a href="../../../../../../../../more/faq.htm">FAQ</a></td>
|
||||
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
|
||||
</table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="make_fused_function_object.html"><img src="../../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../images/home.png" alt="Home"></a><a accesskey="n" href="make_unfused_lvalue_args.html"><img src="../../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
<div class="section" lang="en">
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.functional.generation.functions.make_unfused_generic"></a><a href="make_unfused_generic.html" title="make_unfused_generic">make_unfused_generic</a></h5></div></div></div>
|
||||
<a name="fusion.functional.generation.functions.make_unfused_generic.description"></a><h6>
|
||||
<a name="id1240906"></a>
|
||||
<a href="make_unfused_generic.html#fusion.functional.generation.functions.make_unfused_generic.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
Creates a <a href="../../adapters/unfused_generic.html" title="unfused_generic"><code class="computeroutput"><span class="identifier">unfused_generic</span></code></a> adapter for
|
||||
a given, unary <a href="../../concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic
|
||||
Function Object</a>. The usual <a href="../../../notes.html#fusion.notes.element_conversion"><span class="emphasis"><em>element
|
||||
conversion</em></span></a> is applied to the target function.
|
||||
</p>
|
||||
<a name="fusion.functional.generation.functions.make_unfused_generic.synopsis"></a><h6>
|
||||
<a name="id1240966"></a>
|
||||
<a href="make_unfused_generic.html#fusion.functional.generation.functions.make_unfused_generic.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">template</span> <span class="special"><</span><span class="keyword">typename</span> <span class="identifier">F</span><span class="special">></span>
|
||||
<span class="keyword">inline</span> <span class="keyword">typename</span> <a href="../metafunctions/make_unfused_generic.html" title="make_unfused_generic"><code class="computeroutput"><span class="identifier">make_unfused_generic</span></code></a><span class="special"><</span><span class="identifier">F</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<span class="identifier">make_unfused_generic</span><span class="special">(</span><span class="identifier">F</span> <span class="keyword">const</span> <span class="special">&</span> <span class="identifier">f</span><span class="special">);</span>
|
||||
</pre>
|
||||
<a name="fusion.functional.generation.functions.make_unfused_generic.parameters"></a><h6>
|
||||
<a name="id1241104"></a>
|
||||
<a href="make_unfused_generic.html#fusion.functional.generation.functions.make_unfused_generic.parameters">Parameters</a>
|
||||
</h6>
|
||||
<div class="informaltable"><table class="table">
|
||||
<colgroup>
|
||||
<col>
|
||||
<col>
|
||||
<col>
|
||||
</colgroup>
|
||||
<thead><tr>
|
||||
<th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
</tr></thead>
|
||||
<tbody><tr>
|
||||
<td><code class="computeroutput"><span class="identifier">f</span></code></td>
|
||||
<td>Model
|
||||
of <a href="../../concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic
|
||||
Function Object</a>
|
||||
</td>
|
||||
<td>The function to transform.</td>
|
||||
</tr></tbody>
|
||||
</table></div>
|
||||
<a name="fusion.functional.generation.functions.make_unfused_generic.expression_semantics"></a><h6>
|
||||
<a name="id1241184"></a>
|
||||
<a href="make_unfused_generic.html#fusion.functional.generation.functions.make_unfused_generic.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="identifier">make_unfused_generic</span><span class="special">(</span><span class="identifier">f</span><span class="special">);</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><strong>Return type</strong></span>: A specialization of <a href="../../adapters/unfused_generic.html" title="unfused_generic"><code class="computeroutput"><span class="identifier">unfused_generic</span></code></a>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns a <a href="../../adapters/unfused_generic.html" title="unfused_generic"><code class="computeroutput"><span class="identifier">unfused_generic</span></code></a> adapter for
|
||||
<code class="computeroutput"><span class="identifier">f</span></code>.
|
||||
</p>
|
||||
<a name="fusion.functional.generation.functions.make_unfused_generic.header"></a><h6>
|
||||
<a name="id1241290"></a>
|
||||
<a href="make_unfused_generic.html#fusion.functional.generation.functions.make_unfused_generic.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">functional</span><span class="special">/</span><span class="identifier">generation</span><span class="special">/</span><span class="identifier">make_unfused_generic</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.functional.generation.functions.make_unfused_generic.example"></a><h6>
|
||||
<a name="id1241384"></a>
|
||||
<a href="make_unfused_generic.html#fusion.functional.generation.functions.make_unfused_generic.example">Example</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">struct</span> <span class="identifier">bottles_song</span>
|
||||
<span class="special">{</span>
|
||||
<span class="keyword">template</span><span class="special"><</span><span class="keyword">class</span> <span class="identifier">Seq</span><span class="special">></span>
|
||||
<span class="keyword">struct</span> <span class="identifier">result</span>
|
||||
<span class="special">:</span> <span class="identifier">mpl</span><span class="special">::</span><span class="identifier">if_</span><span class="special"><</span> <span class="identifier">mpl</span><span class="special">::</span><span class="identifier">less</span><span class="special"><</span> <a href="../../../sequences/intrinsics/metafunctions/size.html" title="size"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">size</span></code></a><span class="special"><</span><span class="identifier">Seq</span><span class="special">>,</span> <span class="identifier">mpl</span><span class="special">::</span><span class="identifier">int_</span><span class="special"><</span><span class="number">2</span><span class="special">></span> <span class="special">>,</span>
|
||||
<span class="identifier">boost</span><span class="special">::</span><span class="identifier">blank</span><span class="special">,</span> <span class="identifier">mpl</span><span class="special">::</span><span class="identifier">identity</span><span class="special"><</span><span class="keyword">void</span><span class="special">></span> <span class="special">>::</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">Seq</span><span class="special">></span>
|
||||
<span class="keyword">void</span> <span class="keyword">operator</span><span class="special">()(</span><span class="identifier">Seq</span> <span class="special">&</span> <span class="identifier">s</span><span class="special">)</span> <span class="keyword">const</span>
|
||||
<span class="special">{</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at_c</span><span class="special"><</span><span class="identifier">Seq</span><span class="special">,</span><span class="number">0</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">n</span> <span class="special">=</span> <span class="identifier">at_c</span><span class="special"><</span><span class="number">0</span><span class="special">>(</span><span class="identifier">s</span><span class="special">);</span>
|
||||
<span class="keyword">typename</span> <span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at_c</span><span class="special"><</span><span class="identifier">Seq</span><span class="special">,</span><span class="number">1</span><span class="special">>::</span><span class="identifier">type</span> <span class="identifier">what</span> <span class="special">=</span> <span class="identifier">at_c</span><span class="special"><</span><span class="number">1</span><span class="special">>(</span><span class="identifier">s</span><span class="special">);</span>
|
||||
|
||||
<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span>
|
||||
<span class="special"><<</span> <span class="identifier">n</span> <span class="special"><<</span> <span class="string">" bottles of "</span> <span class="special"><<</span> <span class="identifier">what</span> <span class="special"><<</span> <span class="string">" on the wall.\n"</span>
|
||||
<span class="special"><<</span> <span class="identifier">n</span> <span class="special"><<</span> <span class="string">" bottles of "</span> <span class="special"><<</span> <span class="identifier">what</span> <span class="special"><<</span> <span class="string">"!\n"</span>
|
||||
<span class="special"><<</span> <span class="string">"Take one down - pass it around.\n"</span><span class="special">;</span>
|
||||
|
||||
<span class="identifier">n</span> <span class="special">-=</span> <span class="number">1</span><span class="special">;</span> <span class="comment">// glug glug...
|
||||
</span>
|
||||
<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span>
|
||||
<span class="special"><<</span> <span class="identifier">n</span> <span class="special"><<</span> <span class="string">" bottles of "</span> <span class="special"><<</span> <span class="identifier">what</span> <span class="special"><<</span> <span class="string">" on the wall.\n"</span>
|
||||
<span class="special"><<</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span>
|
||||
<span class="special">}</span>
|
||||
<span class="special">};</span>
|
||||
|
||||
<span class="keyword">void</span> <span class="identifier">try_it</span><span class="special">()</span>
|
||||
<span class="special">{</span>
|
||||
<span class="keyword">unsigned</span> <span class="identifier">n_milk</span> <span class="special">=</span> <span class="number">99</span><span class="special">;</span>
|
||||
<span class="keyword">for</span><span class="special">(</span><span class="keyword">int</span> <span class="identifier">i</span> <span class="special">=</span> <span class="number">0</span><span class="special">;</span> <span class="identifier">i</span> <span class="special"><</span> <span class="number">3</span><span class="special">;</span> <span class="special">++</span><span class="identifier">i</span><span class="special">)</span>
|
||||
<span class="identifier">make_unfused_generic</span><span class="special">(</span><span class="identifier">bottles_song</span><span class="special">())(</span><span class="identifier">n_milk</span><span class="special">,</span><span class="string">"milk"</span><span class="special">);</span>
|
||||
<span class="comment">// 96 bottles left for me
|
||||
</span><span class="special">}</span>
|
||||
</pre>
|
||||
<a name="fusion.functional.generation.functions.make_unfused_generic.see_also"></a><h6>
|
||||
<a name="id1242286"></a>
|
||||
<a href="make_unfused_generic.html#fusion.functional.generation.functions.make_unfused_generic.see_also">See
|
||||
also</a>
|
||||
</h6>
|
||||
<div class="itemizedlist"><ul type="disc">
|
||||
<li><a href="../../adapters/unfused_generic.html" title="unfused_generic"><code class="computeroutput"><span class="identifier">unfused_generic</span></code></a></li>
|
||||
<li><a href="../../../support/deduce.html" title="deduce"><code class="computeroutput"><span class="identifier">deduce</span></code></a></li>
|
||||
<li><a href="../metafunctions/make_unfused_generic.html" title="make_unfused_generic"><code class="computeroutput"><span class="identifier">make_unfused_generic</span></code></a></li>
|
||||
</ul></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"><small>Copyright © 2001-2005 Joel de Guzman, Dan Marsden</small></td>
|
||||
</tr></table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="make_fused_function_object.html"><img src="../../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../images/home.png" alt="Home"></a><a accesskey="n" href="make_unfused_lvalue_args.html"><img src="../../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,142 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>make_unfused_lvalue_args</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../functions.html" title="Functions">
|
||||
<link rel="prev" href="make_unfused_generic.html" title="make_unfused_generic">
|
||||
<link rel="next" href="make_unfused_rvalue_args.html" title="make_unfused_rvalue_args">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
||||
<table cellpadding="2" width="100%">
|
||||
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
|
||||
<td align="center"><a href="../../../../../../../../index.htm">Home</a></td>
|
||||
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
|
||||
<td align="center"><a href="../../../../../../../../people/people.htm">People</a></td>
|
||||
<td align="center"><a href="../../../../../../../../more/faq.htm">FAQ</a></td>
|
||||
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
|
||||
</table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="make_unfused_generic.html"><img src="../../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../images/home.png" alt="Home"></a><a accesskey="n" href="make_unfused_rvalue_args.html"><img src="../../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
<div class="section" lang="en">
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.functional.generation.functions.make_unfused_lvalue_args"></a><a href="make_unfused_lvalue_args.html" title="make_unfused_lvalue_args">make_unfused_lvalue_args</a></h5></div></div></div>
|
||||
<a name="fusion.functional.generation.functions.make_unfused_lvalue_args.description"></a><h6>
|
||||
<a name="id1242387"></a>
|
||||
<a href="make_unfused_lvalue_args.html#fusion.functional.generation.functions.make_unfused_lvalue_args.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
Creates a <a href="../../adapters/unfused_lvalue_args.html" title="unfused_lvalue_args"><code class="computeroutput"><span class="identifier">unfused_lvalue_args</span></code></a> adapter
|
||||
for a given, unary <a href="../../concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic
|
||||
Function Object</a>. The usual <a href="../../../notes.html#fusion.notes.element_conversion"><span class="emphasis"><em>element
|
||||
conversion</em></span></a> is applied to the target function.
|
||||
</p>
|
||||
<a name="fusion.functional.generation.functions.make_unfused_lvalue_args.synopsis"></a><h6>
|
||||
<a name="id1242448"></a>
|
||||
<a href="make_unfused_lvalue_args.html#fusion.functional.generation.functions.make_unfused_lvalue_args.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">template</span> <span class="special"><</span><span class="keyword">typename</span> <span class="identifier">F</span><span class="special">></span>
|
||||
<span class="keyword">inline</span> <span class="keyword">typename</span> <a href="../metafunctions/make_unfused_lvalue_args.html" title="make_unfused_lvalue_args"><code class="computeroutput"><span class="identifier">make_unfused_lvalue_args</span></code></a><span class="special"><</span><span class="identifier">F</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<span class="identifier">make_unfused_lvalue_args</span><span class="special">(</span><span class="identifier">F</span> <span class="keyword">const</span> <span class="special">&</span> <span class="identifier">f</span><span class="special">);</span>
|
||||
</pre>
|
||||
<a name="fusion.functional.generation.functions.make_unfused_lvalue_args.parameters"></a><h6>
|
||||
<a name="id1242586"></a>
|
||||
<a href="make_unfused_lvalue_args.html#fusion.functional.generation.functions.make_unfused_lvalue_args.parameters">Parameters</a>
|
||||
</h6>
|
||||
<div class="informaltable"><table class="table">
|
||||
<colgroup>
|
||||
<col>
|
||||
<col>
|
||||
<col>
|
||||
</colgroup>
|
||||
<thead><tr>
|
||||
<th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
</tr></thead>
|
||||
<tbody><tr>
|
||||
<td><code class="computeroutput"><span class="identifier">f</span></code></td>
|
||||
<td>Model
|
||||
of <a href="../../concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic
|
||||
Function Object</a>
|
||||
</td>
|
||||
<td>The function to transform.</td>
|
||||
</tr></tbody>
|
||||
</table></div>
|
||||
<a name="fusion.functional.generation.functions.make_unfused_lvalue_args.expression_semantics"></a><h6>
|
||||
<a name="id1242665"></a>
|
||||
<a href="make_unfused_lvalue_args.html#fusion.functional.generation.functions.make_unfused_lvalue_args.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="identifier">make_unfused_lvalue_args</span><span class="special">(</span><span class="identifier">f</span><span class="special">);</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><strong>Return type</strong></span>: A specialization of <a href="../../adapters/unfused_lvalue_args.html" title="unfused_lvalue_args"><code class="computeroutput"><span class="identifier">unfused_lvalue_args</span></code></a>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns a <a href="../../adapters/unfused_lvalue_args.html" title="unfused_lvalue_args"><code class="computeroutput"><span class="identifier">unfused_lvalue_args</span></code></a> adapter
|
||||
for <code class="computeroutput"><span class="identifier">f</span></code>.
|
||||
</p>
|
||||
<a name="fusion.functional.generation.functions.make_unfused_lvalue_args.header"></a><h6>
|
||||
<a name="id1242771"></a>
|
||||
<a href="make_unfused_lvalue_args.html#fusion.functional.generation.functions.make_unfused_lvalue_args.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">functional</span><span class="special">/</span><span class="identifier">generation</span><span class="special">/</span><span class="identifier">make_unfused_lvalue_args</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.functional.generation.functions.make_unfused_lvalue_args.example"></a><h6>
|
||||
<a name="id1242865"></a>
|
||||
<a href="make_unfused_lvalue_args.html#fusion.functional.generation.functions.make_unfused_lvalue_args.example">Example</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">struct</span> <span class="identifier">fused_incrementer</span>
|
||||
<span class="special">{</span>
|
||||
<span class="keyword">template</span> <span class="special"><</span><span class="keyword">class</span> <span class="identifier">Seq</span><span class="special">></span>
|
||||
<span class="keyword">struct</span> <span class="identifier">result</span>
|
||||
<span class="special">{</span>
|
||||
<span class="keyword">typedef</span> <span class="keyword">void</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">Seq</span><span class="special">></span>
|
||||
<span class="keyword">void</span> <span class="keyword">operator</span><span class="special">()(</span><span class="identifier">Seq</span> <span class="keyword">const</span> <span class="special">&</span> <span class="identifier">s</span><span class="special">)</span> <span class="keyword">const</span>
|
||||
<span class="special">{</span>
|
||||
<a href="../../../algorithms/iteration/functions/for_each.html" title="for_each"><code class="computeroutput"><span class="identifier">for_each</span></code></a><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">lambda</span><span class="special">::</span><span class="identifier">_1</span><span class="special">);</span>
|
||||
<span class="special">}</span>
|
||||
<span class="special">};</span>
|
||||
|
||||
<span class="keyword">void</span> <span class="identifier">try_it</span><span class="special">()</span>
|
||||
<span class="special">{</span>
|
||||
<span class="keyword">int</span> <span class="identifier">a</span> <span class="special">=</span> <span class="number">2</span><span class="special">;</span> <span class="keyword">char</span> <span class="identifier">b</span> <span class="special">=</span> <span class="char">'X'</span><span class="special">;</span>
|
||||
<span class="identifier">make_unfused_lvalue_args</span><span class="special">(</span><span class="identifier">fused_incrementer</span><span class="special">())(</span><span class="identifier">a</span><span class="special">,</span><span class="identifier">b</span><span class="special">);</span>
|
||||
<span class="identifier">assert</span><span class="special">(</span><span class="identifier">a</span> <span class="special">==</span> <span class="number">3</span> <span class="special">&&</span> <span class="identifier">b</span> <span class="special">==</span> <span class="char">'Y'</span><span class="special">);</span>
|
||||
<span class="special">}</span>
|
||||
</pre>
|
||||
<a name="fusion.functional.generation.functions.make_unfused_lvalue_args.see_also"></a><h6>
|
||||
<a name="id1243287"></a>
|
||||
<a href="make_unfused_lvalue_args.html#fusion.functional.generation.functions.make_unfused_lvalue_args.see_also">See
|
||||
also</a>
|
||||
</h6>
|
||||
<div class="itemizedlist"><ul type="disc">
|
||||
<li><a href="../../adapters/unfused_lvalue_args.html" title="unfused_lvalue_args"><code class="computeroutput"><span class="identifier">unfused_lvalue_args</span></code></a></li>
|
||||
<li><a href="../../../support/deduce.html" title="deduce"><code class="computeroutput"><span class="identifier">deduce</span></code></a></li>
|
||||
<li><a href="../metafunctions/make_unfused_lvalue_args.html" title="make_unfused_lvalue_args"><code class="computeroutput"><span class="identifier">make_unfused_lvalue_args</span></code></a></li>
|
||||
</ul></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"><small>Copyright © 2001-2005 Joel de Guzman, Dan Marsden</small></td>
|
||||
</tr></table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="make_unfused_generic.html"><img src="../../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../images/home.png" alt="Home"></a><a accesskey="n" href="make_unfused_rvalue_args.html"><img src="../../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,141 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>make_unfused_rvalue_args</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../functions.html" title="Functions">
|
||||
<link rel="prev" href="make_unfused_lvalue_args.html" title="make_unfused_lvalue_args">
|
||||
<link rel="next" href="../metafunctions.html" title="Metafunctions">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
||||
<table cellpadding="2" width="100%">
|
||||
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
|
||||
<td align="center"><a href="../../../../../../../../index.htm">Home</a></td>
|
||||
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
|
||||
<td align="center"><a href="../../../../../../../../people/people.htm">People</a></td>
|
||||
<td align="center"><a href="../../../../../../../../more/faq.htm">FAQ</a></td>
|
||||
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
|
||||
</table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="make_unfused_lvalue_args.html"><img src="../../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../images/home.png" alt="Home"></a><a accesskey="n" href="../metafunctions.html"><img src="../../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
<div class="section" lang="en">
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.functional.generation.functions.make_unfused_rvalue_args"></a><a href="make_unfused_rvalue_args.html" title="make_unfused_rvalue_args">make_unfused_rvalue_args</a></h5></div></div></div>
|
||||
<a name="fusion.functional.generation.functions.make_unfused_rvalue_args.description"></a><h6>
|
||||
<a name="id1243389"></a>
|
||||
<a href="make_unfused_rvalue_args.html#fusion.functional.generation.functions.make_unfused_rvalue_args.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
Creates a <a href="../../adapters/unfused_rvalue_args.html" title="unfused_rvalue_args"><code class="computeroutput"><span class="identifier">unfused_rvalue_args</span></code></a> adapter
|
||||
for a given, unary <a href="../../concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic
|
||||
Function Object</a>. The usual <a href="../../../notes.html#fusion.notes.element_conversion"><span class="emphasis"><em>element
|
||||
conversion</em></span></a> is applied to the target function.
|
||||
</p>
|
||||
<a name="fusion.functional.generation.functions.make_unfused_rvalue_args.synopsis"></a><h6>
|
||||
<a name="id1243450"></a>
|
||||
<a href="make_unfused_rvalue_args.html#fusion.functional.generation.functions.make_unfused_rvalue_args.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">template</span> <span class="special"><</span><span class="keyword">typename</span> <span class="identifier">F</span><span class="special">></span>
|
||||
<span class="keyword">inline</span> <span class="keyword">typename</span> <a href="../metafunctions/make_unfused_rvalue_args.html" title="make_unfused_rvalue_args"><code class="computeroutput"><span class="identifier">make_unfused_rvalue_args</span></code></a><span class="special"><</span><span class="identifier">F</span><span class="special">>::</span><span class="identifier">type</span>
|
||||
<span class="identifier">make_unfused_rvalue_args</span><span class="special">(</span><span class="identifier">F</span> <span class="keyword">const</span> <span class="special">&</span> <span class="identifier">f</span><span class="special">);</span>
|
||||
</pre>
|
||||
<a name="fusion.functional.generation.functions.make_unfused_rvalue_args.parameters"></a><h6>
|
||||
<a name="id1243588"></a>
|
||||
<a href="make_unfused_rvalue_args.html#fusion.functional.generation.functions.make_unfused_rvalue_args.parameters">Parameters</a>
|
||||
</h6>
|
||||
<div class="informaltable"><table class="table">
|
||||
<colgroup>
|
||||
<col>
|
||||
<col>
|
||||
<col>
|
||||
</colgroup>
|
||||
<thead><tr>
|
||||
<th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
</tr></thead>
|
||||
<tbody><tr>
|
||||
<td><code class="computeroutput"><span class="identifier">f</span></code></td>
|
||||
<td>Model
|
||||
of <a href="../../concepts/poly.html" title=" Polymorphic Function
|
||||
Object">Polymorphic
|
||||
Function Object</a>
|
||||
</td>
|
||||
<td>The function to transform.</td>
|
||||
</tr></tbody>
|
||||
</table></div>
|
||||
<a name="fusion.functional.generation.functions.make_unfused_rvalue_args.expression_semantics"></a><h6>
|
||||
<a name="id1243666"></a>
|
||||
<a href="make_unfused_rvalue_args.html#fusion.functional.generation.functions.make_unfused_rvalue_args.expression_semantics">Expression
|
||||
Semantics</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="identifier">make_unfused_rvalue_args</span><span class="special">(</span><span class="identifier">f</span><span class="special">);</span>
|
||||
</pre>
|
||||
<p>
|
||||
<span class="bold"><strong>Return type</strong></span>: A specialization of <a href="../../adapters/unfused_rvalue_args.html" title="unfused_rvalue_args"><code class="computeroutput"><span class="identifier">unfused_rvalue_args</span></code></a>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><strong>Semantics</strong></span>: Returns a <a href="../../adapters/unfused_rvalue_args.html" title="unfused_rvalue_args"><code class="computeroutput"><span class="identifier">unfused_rvalue_args</span></code></a> adapter
|
||||
for <code class="computeroutput"><span class="identifier">f</span></code>.
|
||||
</p>
|
||||
<a name="fusion.functional.generation.functions.make_unfused_rvalue_args.header"></a><h6>
|
||||
<a name="id1243773"></a>
|
||||
<a href="make_unfused_rvalue_args.html#fusion.functional.generation.functions.make_unfused_rvalue_args.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">functional</span><span class="special">/</span><span class="identifier">generation</span><span class="special">/</span><span class="identifier">make_unfused_rvalue_args</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.functional.generation.functions.make_unfused_rvalue_args.example"></a><h6>
|
||||
<a name="id1243868"></a>
|
||||
<a href="make_unfused_rvalue_args.html#fusion.functional.generation.functions.make_unfused_rvalue_args.example">Example</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">struct</span> <span class="identifier">sequence_printer</span>
|
||||
<span class="special">{</span>
|
||||
<span class="keyword">template</span> <span class="special"><</span><span class="keyword">class</span> <span class="identifier">Seq</span><span class="special">></span>
|
||||
<span class="keyword">struct</span> <span class="identifier">result</span>
|
||||
<span class="special">{</span>
|
||||
<span class="keyword">typedef</span> <span class="keyword">void</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">Seq</span><span class="special">></span>
|
||||
<span class="keyword">void</span> <span class="keyword">operator</span><span class="special">()(</span><span class="identifier">Seq</span> <span class="keyword">const</span> <span class="special">&</span> <span class="identifier">s</span><span class="special">)</span> <span class="keyword">const</span>
|
||||
<span class="special">{</span>
|
||||
<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special"><<</span> <span class="identifier">s</span> <span class="special"><<</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span>
|
||||
<span class="special">}</span>
|
||||
<span class="special">};</span>
|
||||
|
||||
<span class="keyword">void</span> <span class="identifier">try_it</span><span class="special">()</span>
|
||||
<span class="special">{</span>
|
||||
<span class="identifier">make_unfused_rvalue_args</span><span class="special">(</span><span class="identifier">sequence_printer</span><span class="special">())</span>
|
||||
<span class="special">(</span><span class="number">24</span><span class="special">,</span><span class="string">"bottles of beer in"</span><span class="special">,</span><span class="char">'a'</span><span class="special">,</span><span class="string">"box."</span><span class="special">);</span>
|
||||
<span class="special">}</span>
|
||||
</pre>
|
||||
<a name="fusion.functional.generation.functions.make_unfused_rvalue_args.see_also"></a><h6>
|
||||
<a name="id1244206"></a>
|
||||
<a href="make_unfused_rvalue_args.html#fusion.functional.generation.functions.make_unfused_rvalue_args.see_also">See
|
||||
also</a>
|
||||
</h6>
|
||||
<div class="itemizedlist"><ul type="disc">
|
||||
<li><a href="../../adapters/unfused_rvalue_args.html" title="unfused_rvalue_args"><code class="computeroutput"><span class="identifier">unfused_rvalue_args</span></code></a></li>
|
||||
<li><a href="../../../support/deduce.html" title="deduce"><code class="computeroutput"><span class="identifier">deduce</span></code></a></li>
|
||||
<li><a href="../metafunctions/make_unfused_rvalue_args.html" title="make_unfused_rvalue_args"><code class="computeroutput"><span class="identifier">make_unfused_rvalue_args</span></code></a></li>
|
||||
</ul></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"><small>Copyright © 2001-2005 Joel de Guzman, Dan Marsden</small></td>
|
||||
</tr></table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="make_unfused_lvalue_args.html"><img src="../../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../images/home.png" alt="Home"></a><a accesskey="n" href="../metafunctions.html"><img src="../../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,46 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>Metafunctions</title>
|
||||
<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../generation.html" title="Generation">
|
||||
<link rel="prev" href="functions/make_unfused_rvalue_args.html" title="make_unfused_rvalue_args">
|
||||
<link rel="next" href="metafunctions/make_fused.html" title="make_fused">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
||||
<table cellpadding="2" width="100%">
|
||||
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
|
||||
<td align="center"><a href="../../../../../../../index.htm">Home</a></td>
|
||||
<td align="center"><a href="../../../../../../libraries.htm">Libraries</a></td>
|
||||
<td align="center"><a href="../../../../../../../people/people.htm">People</a></td>
|
||||
<td align="center"><a href="../../../../../../../more/faq.htm">FAQ</a></td>
|
||||
<td align="center"><a href="../../../../../../../more/index.htm">More</a></td>
|
||||
</table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="functions/make_unfused_rvalue_args.html"><img src="../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../generation.html"><img src="../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../images/home.png" alt="Home"></a><a accesskey="n" href="metafunctions/make_fused.html"><img src="../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
<div class="section" lang="en">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="fusion.functional.generation.metafunctions"></a><a href="metafunctions.html" title="Metafunctions">Metafunctions</a></h4></div></div></div>
|
||||
<div class="toc"><dl>
|
||||
<dt><span class="section"><a href="metafunctions/make_fused.html">make_fused</a></span></dt>
|
||||
<dt><span class="section"><a href="metafunctions/make_fused_procedure.html">make_fused_procedure</a></span></dt>
|
||||
<dt><span class="section"><a href="metafunctions/make_fused_function_object.html">make_fused_function_object</a></span></dt>
|
||||
<dt><span class="section"><a href="metafunctions/make_unfused_generic.html">make_unfused_generic</a></span></dt>
|
||||
<dt><span class="section"><a href="metafunctions/make_unfused_lvalue_args.html">make_unfused_lvalue_args</a></span></dt>
|
||||
<dt><span class="section"><a href="metafunctions/make_unfused_rvalue_args.html">make_unfused_rvalue_args</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"><small>Copyright © 2001-2005 Joel de Guzman, Dan Marsden</small></td>
|
||||
</tr></table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="functions/make_unfused_rvalue_args.html"><img src="../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../generation.html"><img src="../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../images/home.png" alt="Home"></a><a accesskey="n" href="metafunctions/make_fused.html"><img src="../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,72 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>make_fused</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../metafunctions.html" title="Metafunctions">
|
||||
<link rel="prev" href="../metafunctions.html" title="Metafunctions">
|
||||
<link rel="next" href="make_fused_procedure.html" title="make_fused_procedure">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
||||
<table cellpadding="2" width="100%">
|
||||
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
|
||||
<td align="center"><a href="../../../../../../../../index.htm">Home</a></td>
|
||||
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
|
||||
<td align="center"><a href="../../../../../../../../people/people.htm">People</a></td>
|
||||
<td align="center"><a href="../../../../../../../../more/faq.htm">FAQ</a></td>
|
||||
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
|
||||
</table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="../metafunctions.html"><img src="../../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../images/home.png" alt="Home"></a><a accesskey="n" href="make_fused_procedure.html"><img src="../../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
<div class="section" lang="en">
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.functional.generation.metafunctions.make_fused"></a><a href="make_fused.html" title="make_fused">make_fused</a></h5></div></div></div>
|
||||
<a name="fusion.functional.generation.metafunctions.make_fused.description"></a><h6>
|
||||
<a name="id1244325"></a>
|
||||
<a href="make_fused.html#fusion.functional.generation.metafunctions.make_fused.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
Returns the result type of <a href="../functions/make_fused.html" title="make_fused"><code class="computeroutput"><span class="identifier">make_fused</span></code></a>.
|
||||
</p>
|
||||
<a name="fusion.functional.generation.metafunctions.make_fused.header"></a><h6>
|
||||
<a name="id1244367"></a>
|
||||
<a href="make_fused.html#fusion.functional.generation.metafunctions.make_fused.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">functional</span><span class="special">/</span><span class="identifier">generation</span><span class="special">/</span><span class="identifier">make_fused</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.functional.generation.metafunctions.make_fused.synopsis"></a><h6>
|
||||
<a name="id1244460"></a>
|
||||
<a href="make_fused.html#fusion.functional.generation.metafunctions.make_fused.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">namespace</span> <span class="identifier">result_of</span>
|
||||
<span class="special">{</span>
|
||||
<span class="keyword">template</span><span class="special"><</span><span class="keyword">typename</span> <span class="identifier">Function</span><span class="special">></span>
|
||||
<span class="keyword">struct</span> <span class="identifier">make_fused</span>
|
||||
<span class="special">{</span>
|
||||
<span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
|
||||
<span class="special">};</span>
|
||||
<span class="special">}</span>
|
||||
</pre>
|
||||
<a name="fusion.functional.generation.metafunctions.make_fused.see_also"></a><h6>
|
||||
<a name="id1244577"></a>
|
||||
<a href="make_fused.html#fusion.functional.generation.metafunctions.make_fused.see_also">See
|
||||
also</a>
|
||||
</h6>
|
||||
<div class="itemizedlist"><ul type="disc"><li><a href="../functions/make_fused.html" title="make_fused"><code class="computeroutput"><span class="identifier">make_fused</span></code></a></li></ul></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"><small>Copyright © 2001-2005 Joel de Guzman, Dan Marsden</small></td>
|
||||
</tr></table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="../metafunctions.html"><img src="../../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../images/home.png" alt="Home"></a><a accesskey="n" href="make_fused_procedure.html"><img src="../../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,72 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>make_fused_function_object</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../metafunctions.html" title="Metafunctions">
|
||||
<link rel="prev" href="make_fused_procedure.html" title="make_fused_procedure">
|
||||
<link rel="next" href="make_unfused_generic.html" title="make_unfused_generic">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
||||
<table cellpadding="2" width="100%">
|
||||
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
|
||||
<td align="center"><a href="../../../../../../../../index.htm">Home</a></td>
|
||||
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
|
||||
<td align="center"><a href="../../../../../../../../people/people.htm">People</a></td>
|
||||
<td align="center"><a href="../../../../../../../../more/faq.htm">FAQ</a></td>
|
||||
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
|
||||
</table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="make_fused_procedure.html"><img src="../../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../images/home.png" alt="Home"></a><a accesskey="n" href="make_unfused_generic.html"><img src="../../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
<div class="section" lang="en">
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.functional.generation.metafunctions.make_fused_function_object"></a><a href="make_fused_function_object.html" title="make_fused_function_object">make_fused_function_object</a></h5></div></div></div>
|
||||
<a name="fusion.functional.generation.metafunctions.make_fused_function_object.description"></a><h6>
|
||||
<a name="id1244967"></a>
|
||||
<a href="make_fused_function_object.html#fusion.functional.generation.metafunctions.make_fused_function_object.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
Returns the result type of <a href="../functions/make_fused_function_object.html" title="make_fused_function_object"><code class="computeroutput"><span class="identifier">make_fused_function_object</span></code></a>.
|
||||
</p>
|
||||
<a name="fusion.functional.generation.metafunctions.make_fused_function_object.header"></a><h6>
|
||||
<a name="id1245012"></a>
|
||||
<a href="make_fused_function_object.html#fusion.functional.generation.metafunctions.make_fused_function_object.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">functional</span><span class="special">/</span><span class="identifier">generation</span><span class="special">/</span><span class="identifier">make_fused_function_object</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.functional.generation.metafunctions.make_fused_function_object.synopsis"></a><h6>
|
||||
<a name="id1245107"></a>
|
||||
<a href="make_fused_function_object.html#fusion.functional.generation.metafunctions.make_fused_function_object.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">namespace</span> <span class="identifier">result_of</span>
|
||||
<span class="special">{</span>
|
||||
<span class="keyword">template</span><span class="special"><</span><span class="keyword">typename</span> <span class="identifier">Function</span><span class="special">></span>
|
||||
<span class="keyword">struct</span> <span class="identifier">make_fused_function_object</span>
|
||||
<span class="special">{</span>
|
||||
<span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
|
||||
<span class="special">};</span>
|
||||
<span class="special">}</span>
|
||||
</pre>
|
||||
<a name="fusion.functional.generation.metafunctions.make_fused_function_object.see_also"></a><h6>
|
||||
<a name="id1245224"></a>
|
||||
<a href="make_fused_function_object.html#fusion.functional.generation.metafunctions.make_fused_function_object.see_also">See
|
||||
also</a>
|
||||
</h6>
|
||||
<div class="itemizedlist"><ul type="disc"><li><a href="../functions/make_fused_function_object.html" title="make_fused_function_object"><code class="computeroutput"><span class="identifier">make_fused_function_object</span></code></a></li></ul></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"><small>Copyright © 2001-2005 Joel de Guzman, Dan Marsden</small></td>
|
||||
</tr></table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="make_fused_procedure.html"><img src="../../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../images/home.png" alt="Home"></a><a accesskey="n" href="make_unfused_generic.html"><img src="../../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,72 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>make_fused_procedure</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../metafunctions.html" title="Metafunctions">
|
||||
<link rel="prev" href="make_fused.html" title="make_fused">
|
||||
<link rel="next" href="make_fused_function_object.html" title="make_fused_function_object">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
||||
<table cellpadding="2" width="100%">
|
||||
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
|
||||
<td align="center"><a href="../../../../../../../../index.htm">Home</a></td>
|
||||
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
|
||||
<td align="center"><a href="../../../../../../../../people/people.htm">People</a></td>
|
||||
<td align="center"><a href="../../../../../../../../more/faq.htm">FAQ</a></td>
|
||||
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
|
||||
</table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="make_fused.html"><img src="../../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../images/home.png" alt="Home"></a><a accesskey="n" href="make_fused_function_object.html"><img src="../../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
<div class="section" lang="en">
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.functional.generation.metafunctions.make_fused_procedure"></a><a href="make_fused_procedure.html" title="make_fused_procedure">make_fused_procedure</a></h5></div></div></div>
|
||||
<a name="fusion.functional.generation.metafunctions.make_fused_procedure.description"></a><h6>
|
||||
<a name="id1244642"></a>
|
||||
<a href="make_fused_procedure.html#fusion.functional.generation.metafunctions.make_fused_procedure.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
Returns the result type of <a href="../functions/make_fused_procedure.html" title="make_fused_procedure"><code class="computeroutput"><span class="identifier">make_fused_procedure</span></code></a>.
|
||||
</p>
|
||||
<a name="fusion.functional.generation.metafunctions.make_fused_procedure.header"></a><h6>
|
||||
<a name="id1244686"></a>
|
||||
<a href="make_fused_procedure.html#fusion.functional.generation.metafunctions.make_fused_procedure.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">functional</span><span class="special">/</span><span class="identifier">generation</span><span class="special">/</span><span class="identifier">make_fused_procedure</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.functional.generation.metafunctions.make_fused_procedure.synopsis"></a><h6>
|
||||
<a name="id1244781"></a>
|
||||
<a href="make_fused_procedure.html#fusion.functional.generation.metafunctions.make_fused_procedure.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">namespace</span> <span class="identifier">result_of</span>
|
||||
<span class="special">{</span>
|
||||
<span class="keyword">template</span><span class="special"><</span><span class="keyword">typename</span> <span class="identifier">Function</span><span class="special">></span>
|
||||
<span class="keyword">struct</span> <span class="identifier">make_fused_procedure</span>
|
||||
<span class="special">{</span>
|
||||
<span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
|
||||
<span class="special">};</span>
|
||||
<span class="special">}</span>
|
||||
</pre>
|
||||
<a name="fusion.functional.generation.metafunctions.make_fused_procedure.see_also"></a><h6>
|
||||
<a name="id1244899"></a>
|
||||
<a href="make_fused_procedure.html#fusion.functional.generation.metafunctions.make_fused_procedure.see_also">See
|
||||
also</a>
|
||||
</h6>
|
||||
<div class="itemizedlist"><ul type="disc"><li><a href="../functions/make_fused_procedure.html" title="make_fused_procedure"><code class="computeroutput"><span class="identifier">make_fused_procedure</span></code></a></li></ul></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"><small>Copyright © 2001-2005 Joel de Guzman, Dan Marsden</small></td>
|
||||
</tr></table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="make_fused.html"><img src="../../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../images/home.png" alt="Home"></a><a accesskey="n" href="make_fused_function_object.html"><img src="../../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,72 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>make_unfused_generic</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../metafunctions.html" title="Metafunctions">
|
||||
<link rel="prev" href="make_fused_function_object.html" title="make_fused_function_object">
|
||||
<link rel="next" href="make_unfused_lvalue_args.html" title="make_unfused_lvalue_args">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
||||
<table cellpadding="2" width="100%">
|
||||
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
|
||||
<td align="center"><a href="../../../../../../../../index.htm">Home</a></td>
|
||||
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
|
||||
<td align="center"><a href="../../../../../../../../people/people.htm">People</a></td>
|
||||
<td align="center"><a href="../../../../../../../../more/faq.htm">FAQ</a></td>
|
||||
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
|
||||
</table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="make_fused_function_object.html"><img src="../../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../images/home.png" alt="Home"></a><a accesskey="n" href="make_unfused_lvalue_args.html"><img src="../../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
<div class="section" lang="en">
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.functional.generation.metafunctions.make_unfused_generic"></a><a href="make_unfused_generic.html" title="make_unfused_generic">make_unfused_generic</a></h5></div></div></div>
|
||||
<a name="fusion.functional.generation.metafunctions.make_unfused_generic.description"></a><h6>
|
||||
<a name="id1245290"></a>
|
||||
<a href="make_unfused_generic.html#fusion.functional.generation.metafunctions.make_unfused_generic.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
Returns the result type of <a href="../functions/make_unfused_generic.html" title="make_unfused_generic"><code class="computeroutput"><span class="identifier">make_unfused_generic</span></code></a>.
|
||||
</p>
|
||||
<a name="fusion.functional.generation.metafunctions.make_unfused_generic.header"></a><h6>
|
||||
<a name="id1245334"></a>
|
||||
<a href="make_unfused_generic.html#fusion.functional.generation.metafunctions.make_unfused_generic.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">functional</span><span class="special">/</span><span class="identifier">generation</span><span class="special">/</span><span class="identifier">make_unfused_generic</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.functional.generation.metafunctions.make_unfused_generic.synopsis"></a><h6>
|
||||
<a name="id1245429"></a>
|
||||
<a href="make_unfused_generic.html#fusion.functional.generation.metafunctions.make_unfused_generic.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">namespace</span> <span class="identifier">result_of</span>
|
||||
<span class="special">{</span>
|
||||
<span class="keyword">template</span><span class="special"><</span><span class="keyword">typename</span> <span class="identifier">Function</span><span class="special">></span>
|
||||
<span class="keyword">struct</span> <span class="identifier">make_unfused_generic</span>
|
||||
<span class="special">{</span>
|
||||
<span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
|
||||
<span class="special">};</span>
|
||||
<span class="special">}</span>
|
||||
</pre>
|
||||
<a name="fusion.functional.generation.metafunctions.make_unfused_generic.see_also"></a><h6>
|
||||
<a name="id1245547"></a>
|
||||
<a href="make_unfused_generic.html#fusion.functional.generation.metafunctions.make_unfused_generic.see_also">See
|
||||
also</a>
|
||||
</h6>
|
||||
<div class="itemizedlist"><ul type="disc"><li><a href="../functions/make_unfused_generic.html" title="make_unfused_generic"><code class="computeroutput"><span class="identifier">make_unfused_generic</span></code></a></li></ul></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"><small>Copyright © 2001-2005 Joel de Guzman, Dan Marsden</small></td>
|
||||
</tr></table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="make_fused_function_object.html"><img src="../../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../images/home.png" alt="Home"></a><a accesskey="n" href="make_unfused_lvalue_args.html"><img src="../../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,72 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>make_unfused_lvalue_args</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../metafunctions.html" title="Metafunctions">
|
||||
<link rel="prev" href="make_unfused_generic.html" title="make_unfused_generic">
|
||||
<link rel="next" href="make_unfused_rvalue_args.html" title="make_unfused_rvalue_args">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
||||
<table cellpadding="2" width="100%">
|
||||
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
|
||||
<td align="center"><a href="../../../../../../../../index.htm">Home</a></td>
|
||||
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
|
||||
<td align="center"><a href="../../../../../../../../people/people.htm">People</a></td>
|
||||
<td align="center"><a href="../../../../../../../../more/faq.htm">FAQ</a></td>
|
||||
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
|
||||
</table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="make_unfused_generic.html"><img src="../../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../images/home.png" alt="Home"></a><a accesskey="n" href="make_unfused_rvalue_args.html"><img src="../../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
<div class="section" lang="en">
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.functional.generation.metafunctions.make_unfused_lvalue_args"></a><a href="make_unfused_lvalue_args.html" title="make_unfused_lvalue_args">make_unfused_lvalue_args</a></h5></div></div></div>
|
||||
<a name="fusion.functional.generation.metafunctions.make_unfused_lvalue_args.description"></a><h6>
|
||||
<a name="id1245614"></a>
|
||||
<a href="make_unfused_lvalue_args.html#fusion.functional.generation.metafunctions.make_unfused_lvalue_args.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
Returns the result type of <a href="../functions/make_unfused_lvalue_args.html" title="make_unfused_lvalue_args"><code class="computeroutput"><span class="identifier">make_unfused_lvalue_args</span></code></a>.
|
||||
</p>
|
||||
<a name="fusion.functional.generation.metafunctions.make_unfused_lvalue_args.header"></a><h6>
|
||||
<a name="id1245659"></a>
|
||||
<a href="make_unfused_lvalue_args.html#fusion.functional.generation.metafunctions.make_unfused_lvalue_args.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">functional</span><span class="special">/</span><span class="identifier">generation</span><span class="special">/</span><span class="identifier">make_unfused_lvalue_args</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.functional.generation.metafunctions.make_unfused_lvalue_args.synopsis"></a><h6>
|
||||
<a name="id1245753"></a>
|
||||
<a href="make_unfused_lvalue_args.html#fusion.functional.generation.metafunctions.make_unfused_lvalue_args.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">namespace</span> <span class="identifier">result_of</span>
|
||||
<span class="special">{</span>
|
||||
<span class="keyword">template</span><span class="special"><</span><span class="keyword">typename</span> <span class="identifier">Function</span><span class="special">></span>
|
||||
<span class="keyword">struct</span> <span class="identifier">make_unfused_lvalue_args</span>
|
||||
<span class="special">{</span>
|
||||
<span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
|
||||
<span class="special">};</span>
|
||||
<span class="special">}</span>
|
||||
</pre>
|
||||
<a name="fusion.functional.generation.metafunctions.make_unfused_lvalue_args.see_also"></a><h6>
|
||||
<a name="id1245872"></a>
|
||||
<a href="make_unfused_lvalue_args.html#fusion.functional.generation.metafunctions.make_unfused_lvalue_args.see_also">See
|
||||
also</a>
|
||||
</h6>
|
||||
<div class="itemizedlist"><ul type="disc"><li><a href="../functions/make_unfused_lvalue_args.html" title="make_unfused_lvalue_args"><code class="computeroutput"><span class="identifier">make_unfused_lvalue_args</span></code></a></li></ul></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"><small>Copyright © 2001-2005 Joel de Guzman, Dan Marsden</small></td>
|
||||
</tr></table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="make_unfused_generic.html"><img src="../../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../images/home.png" alt="Home"></a><a accesskey="n" href="make_unfused_rvalue_args.html"><img src="../../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,72 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>make_unfused_rvalue_args</title>
|
||||
<link rel="stylesheet" href="../../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../metafunctions.html" title="Metafunctions">
|
||||
<link rel="prev" href="make_unfused_lvalue_args.html" title="make_unfused_lvalue_args">
|
||||
<link rel="next" href="../../../notes.html" title="Notes">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
||||
<table cellpadding="2" width="100%">
|
||||
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
|
||||
<td align="center"><a href="../../../../../../../../index.htm">Home</a></td>
|
||||
<td align="center"><a href="../../../../../../../libraries.htm">Libraries</a></td>
|
||||
<td align="center"><a href="../../../../../../../../people/people.htm">People</a></td>
|
||||
<td align="center"><a href="../../../../../../../../more/faq.htm">FAQ</a></td>
|
||||
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
|
||||
</table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="make_unfused_lvalue_args.html"><img src="../../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../images/home.png" alt="Home"></a><a accesskey="n" href="../../../notes.html"><img src="../../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
<div class="section" lang="en">
|
||||
<div class="titlepage"><div><div><h5 class="title">
|
||||
<a name="fusion.functional.generation.metafunctions.make_unfused_rvalue_args"></a><a href="make_unfused_rvalue_args.html" title="make_unfused_rvalue_args">make_unfused_rvalue_args</a></h5></div></div></div>
|
||||
<a name="fusion.functional.generation.metafunctions.make_unfused_rvalue_args.description"></a><h6>
|
||||
<a name="id1245937"></a>
|
||||
<a href="make_unfused_rvalue_args.html#fusion.functional.generation.metafunctions.make_unfused_rvalue_args.description">Description</a>
|
||||
</h6>
|
||||
<p>
|
||||
Returns the result type of <a href="../functions/make_unfused_rvalue_args.html" title="make_unfused_rvalue_args"><code class="computeroutput"><span class="identifier">make_unfused_rvalue_args</span></code></a>.
|
||||
</p>
|
||||
<a name="fusion.functional.generation.metafunctions.make_unfused_rvalue_args.header"></a><h6>
|
||||
<a name="id1245981"></a>
|
||||
<a href="make_unfused_rvalue_args.html#fusion.functional.generation.metafunctions.make_unfused_rvalue_args.header">Header</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">functional</span><span class="special">/</span><span class="identifier">generation</span><span class="special">/</span><span class="identifier">make_unfused_rvalue_args</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<a name="fusion.functional.generation.metafunctions.make_unfused_rvalue_args.synopsis"></a><h6>
|
||||
<a name="id1246076"></a>
|
||||
<a href="make_unfused_rvalue_args.html#fusion.functional.generation.metafunctions.make_unfused_rvalue_args.synopsis">Synopsis</a>
|
||||
</h6>
|
||||
<pre class="programlisting">
|
||||
<span class="keyword">namespace</span> <span class="identifier">result_of</span>
|
||||
<span class="special">{</span>
|
||||
<span class="keyword">template</span><span class="special"><</span><span class="keyword">typename</span> <span class="identifier">Function</span><span class="special">></span>
|
||||
<span class="keyword">struct</span> <span class="identifier">make_unfused_rvalue_args</span>
|
||||
<span class="special">{</span>
|
||||
<span class="keyword">typedef</span> <span class="emphasis"><em>unspecified</em></span> <span class="identifier">type</span><span class="special">;</span>
|
||||
<span class="special">};</span>
|
||||
<span class="special">}</span>
|
||||
</pre>
|
||||
<a name="fusion.functional.generation.metafunctions.make_unfused_rvalue_args.see_also"></a><h6>
|
||||
<a name="id1246194"></a>
|
||||
<a href="make_unfused_rvalue_args.html#fusion.functional.generation.metafunctions.make_unfused_rvalue_args.see_also">See
|
||||
also</a>
|
||||
</h6>
|
||||
<div class="itemizedlist"><ul type="disc"><li><a href="../functions/make_unfused_rvalue_args.html" title="make_unfused_rvalue_args"><code class="computeroutput"><span class="identifier">make_unfused_rvalue_args</span></code></a></li></ul></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"><small>Copyright © 2001-2005 Joel de Guzman, Dan Marsden</small></td>
|
||||
</tr></table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="make_unfused_lvalue_args.html"><img src="../../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../images/home.png" alt="Home"></a><a accesskey="n" href="../../../notes.html"><img src="../../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,53 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>Invocation</title>
|
||||
<link rel="stylesheet" href="../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../functional.html" title="Functional">
|
||||
<link rel="prev" href="concepts/def_callable.html" title=" Deferred
|
||||
Callable Object">
|
||||
<link rel="next" href="invocation/functions.html" title="Functions">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
||||
<table cellpadding="2" width="100%">
|
||||
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td>
|
||||
<td align="center"><a href="../../../../../../index.htm">Home</a></td>
|
||||
<td align="center"><a href="../../../../../libraries.htm">Libraries</a></td>
|
||||
<td align="center"><a href="../../../../../../people/people.htm">People</a></td>
|
||||
<td align="center"><a href="../../../../../../more/faq.htm">FAQ</a></td>
|
||||
<td align="center"><a href="../../../../../../more/index.htm">More</a></td>
|
||||
</table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="concepts/def_callable.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../functional.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="invocation/functions.html"><img src="../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
<div class="section" lang="en">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="fusion.functional.invocation"></a><a href="invocation.html" title="Invocation">Invocation</a></h3></div></div></div>
|
||||
<div class="toc"><dl>
|
||||
<dt><span class="section"><a href="invocation/functions.html">Functions</a></span></dt>
|
||||
<dd><dl>
|
||||
<dt><span class="section"><a href="invocation/functions/invoke.html">invoke</a></span></dt>
|
||||
<dt><span class="section"><a href="invocation/functions/invoke_procedure.html">invoke_procedure</a></span></dt>
|
||||
<dt><span class="section"><a href="invocation/functions/invoke_function_object.html">invoke_function_object</a></span></dt>
|
||||
</dl></dd>
|
||||
<dt><span class="section"><a href="invocation/metafunctions.html">Metafunctions</a></span></dt>
|
||||
<dd><dl>
|
||||
<dt><span class="section"><a href="invocation/metafunctions/invoke.html">invoke</a></span></dt>
|
||||
<dt><span class="section"><a href="invocation/metafunctions/invoke_procedure.html">invoke_procedure</a></span></dt>
|
||||
<dt><span class="section"><a href="invocation/metafunctions/invoke_function_object.html">invoke_function_object</a></span></dt>
|
||||
</dl></dd>
|
||||
</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"><small>Copyright © 2001-2005 Joel de Guzman, Dan Marsden</small></td>
|
||||
</tr></table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="concepts/def_callable.html"><img src="../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../functional.html"><img src="../../images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../images/home.png" alt="Home"></a><a accesskey="n" href="invocation/functions.html"><img src="../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,43 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<title>Functions</title>
|
||||
<link rel="stylesheet" href="../../../boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
|
||||
<link rel="start" href="../../../index.html" title="Chapter 1. Fusion 2.0">
|
||||
<link rel="up" href="../invocation.html" title="Invocation">
|
||||
<link rel="prev" href="../invocation.html" title="Invocation">
|
||||
<link rel="next" href="functions/invoke.html" title="invoke">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
||||
<table cellpadding="2" width="100%">
|
||||
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
|
||||
<td align="center"><a href="../../../../../../../index.htm">Home</a></td>
|
||||
<td align="center"><a href="../../../../../../libraries.htm">Libraries</a></td>
|
||||
<td align="center"><a href="../../../../../../../people/people.htm">People</a></td>
|
||||
<td align="center"><a href="../../../../../../../more/faq.htm">FAQ</a></td>
|
||||
<td align="center"><a href="../../../../../../../more/index.htm">More</a></td>
|
||||
</table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="../invocation.html"><img src="../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../invocation.html"><img src="../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../images/home.png" alt="Home"></a><a accesskey="n" href="functions/invoke.html"><img src="../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
<div class="section" lang="en">
|
||||
<div class="titlepage"><div><div><h4 class="title">
|
||||
<a name="fusion.functional.invocation.functions"></a><a href="functions.html" title="Functions">Functions</a></h4></div></div></div>
|
||||
<div class="toc"><dl>
|
||||
<dt><span class="section"><a href="functions/invoke.html">invoke</a></span></dt>
|
||||
<dt><span class="section"><a href="functions/invoke_procedure.html">invoke_procedure</a></span></dt>
|
||||
<dt><span class="section"><a href="functions/invoke_function_object.html">invoke_function_object</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"><small>Copyright © 2001-2005 Joel de Guzman, Dan Marsden</small></td>
|
||||
</tr></table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="../invocation.html"><img src="../../../images/prev.png" alt="Prev"></a><a accesskey="u" href="../invocation.html"><img src="../../../images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../images/home.png" alt="Home"></a><a accesskey="n" href="functions/invoke.html"><img src="../../../images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user