adds documentation for functional module

[SVN r36959]
This commit is contained in:
Tobias Schwinger
2007-02-15 23:11:24 +00:00
parent 67f0df4958
commit ca6f831b96
247 changed files with 8675 additions and 3833 deletions

View File

@ -3,7 +3,7 @@
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Comparison</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<65>1.<2E>Fusion 2.0">
<link rel="up" href="../operators.html" title="Operators">
<link rel="prev" href="i_o/out.html" title="out">
@ -39,16 +39,16 @@
than equal</a></span></dt>
</dl></div>
<p>
The Comparison operators: <tt class="computeroutput"><span class="special">==</span></tt>,
<tt class="computeroutput"><span class="special">!=</span></tt>, <tt class="computeroutput"><span class="special">&lt;</span></tt>,
<tt class="computeroutput"><span class="special">&lt;=</span></tt>, <tt class="computeroutput"><span class="special">&gt;=</span></tt>
and <tt class="computeroutput"><span class="special">&gt;=</span></tt> work generically
The Comparison operators: <code class="computeroutput"><span class="special">==</span></code>,
<code class="computeroutput"><span class="special">!=</span></code>, <code class="computeroutput"><span class="special">&lt;</span></code>,
<code class="computeroutput"><span class="special">&lt;=</span></code>, <code class="computeroutput"><span class="special">&gt;=</span></code>
and <code class="computeroutput"><span class="special">&gt;=</span></code> work generically
on all Fusion sequences. Comparison operators are "short- circuited":
elementary comparisons start from the first elements and are performed
only until the result is clear.
</p>
<a name="fusion.sequences.operators.comparison.header"></a><h5>
<a name="id547323"></a>
<a name="id1075463"></a>
<a href="comparison.html#fusion.sequences.operators.comparison.header">Header</a>
</h5>
<pre class="programlisting">

View File

@ -3,7 +3,7 @@
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>equal</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<65>1.<2E>Fusion 2.0">
<link rel="up" href="../comparison.html" title="Comparison">
<link rel="prev" href="../comparison.html" title="Comparison">
@ -27,14 +27,14 @@
<div class="titlepage"><div><div><h5 class="title">
<a name="fusion.sequences.operators.comparison.equal"></a><a href="equal.html" title="equal">equal</a></h5></div></div></div>
<a name="fusion.sequences.operators.comparison.equal.description"></a><h6>
<a name="id547437"></a>
<a name="id1075563"></a>
<a href="equal.html#fusion.sequences.operators.comparison.equal.description">Description</a>
</h6>
<p>
Compare two sequences for equality.
</p>
<a name="fusion.sequences.operators.comparison.equal.synopsis"></a><h6>
<a name="id547468"></a>
<a name="id1075592"></a>
<a href="equal.html#fusion.sequences.operators.comparison.equal.synopsis">Synopsis</a>
</h6>
<pre class="programlisting">
@ -43,7 +43,7 @@
<span class="keyword">operator</span><span class="special">==(</span><span class="identifier">Seq1</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">a</span><span class="special">,</span> <span class="identifier">Seq2</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">b</span><span class="special">);</span>
</pre>
<a name="fusion.sequences.operators.comparison.equal.parameters"></a><h6>
<a name="id547621"></a>
<a name="id1075727"></a>
<a href="equal.html#fusion.sequences.operators.comparison.equal.parameters">Parameters</a>
</h6>
<div class="informaltable"><table class="table">
@ -58,8 +58,8 @@
<th>Description</th>
</tr></thead>
<tbody><tr>
<td><tt class="computeroutput"><span class="identifier">a</span><span class="special">,</span>
<span class="identifier">b</span></tt></td>
<td><code class="computeroutput"><span class="identifier">a</span><span class="special">,</span>
<span class="identifier">b</span></code></td>
<td>Instances
of <a href="../../../sequences.html" title="Sequences">Sequence</a>
</td>
@ -68,7 +68,7 @@
</tr></tbody>
</table></div>
<a name="fusion.sequences.operators.comparison.equal.expression_semantics"></a><h6>
<a name="id547725"></a>
<a name="id1075820"></a>
<a href="equal.html#fusion.sequences.operators.comparison.equal.expression_semantics">Expression
Semantics</a>
</h6>
@ -76,16 +76,16 @@
<span class="identifier">a</span> <span class="special">==</span> <span class="identifier">b</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>Requirements</b></span>:
<span class="bold"><strong>Requirements</strong></span>:
</p>
<p>
For each element, <tt class="computeroutput"><span class="identifier">e1</span></tt>,
in sequence <tt class="computeroutput"><span class="identifier">a</span></tt>, and for
each element, <tt class="computeroutput"><span class="identifier">e2</span></tt>, in
sequence <tt class="computeroutput"><span class="identifier">b</span></tt>, <tt class="computeroutput"><span class="identifier">a</span> <span class="special">==</span> <span class="identifier">b</span></tt> is a valid expression returning a
For each element, <code class="computeroutput"><span class="identifier">e1</span></code>,
in sequence <code class="computeroutput"><span class="identifier">a</span></code>, and for
each element, <code class="computeroutput"><span class="identifier">e2</span></code>, in
sequence <code class="computeroutput"><span class="identifier">b</span></code>, <code class="computeroutput"><span class="identifier">a</span> <span class="special">==</span> <span class="identifier">b</span></code> is a valid expression returning a
type that is convertible to bool.
</p>
<p>
@ -93,30 +93,30 @@
compile time error.
</p>
<p>
<span class="bold"><b>Semantics</b></span>:
<span class="bold"><strong>Semantics</strong></span>:
</p>
<p>
For each element, <tt class="computeroutput"><span class="identifier">e1</span></tt>,
in sequence <tt class="computeroutput"><span class="identifier">a</span></tt>, and for
each element, <tt class="computeroutput"><span class="identifier">e2</span></tt>, in
sequence <tt class="computeroutput"><span class="identifier">b</span></tt>, <tt class="computeroutput"><span class="identifier">e1</span> <span class="special">==</span> <span class="identifier">e2</span></tt> returns true. For any 2 zero length
For each element, <code class="computeroutput"><span class="identifier">e1</span></code>,
in sequence <code class="computeroutput"><span class="identifier">a</span></code>, and for
each element, <code class="computeroutput"><span class="identifier">e2</span></code>, in
sequence <code class="computeroutput"><span class="identifier">b</span></code>, <code class="computeroutput"><span class="identifier">e1</span> <span class="special">==</span> <span class="identifier">e2</span></code> returns true. For any 2 zero length
<span class="underline">_sequence</span>_s, e and f, e == f returns
true.
</p>
<a name="fusion.sequences.operators.comparison.equal.header"></a><h6>
<a name="id547968"></a>
<a name="id1075827"></a>
<a href="equal.html#fusion.sequences.operators.comparison.equal.header">Header</a>
</h6>
<pre class="programlisting">
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">sequence</span><span class="special">/</span><span class="identifier">comparison</span><span class="special">/</span><span class="identifier">equal_to</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
</pre>
<a name="fusion.sequences.operators.comparison.equal.example"></a><h6>
<a name="id548074"></a>
<a name="id1076126"></a>
<a href="equal.html#fusion.sequences.operators.comparison.equal.example">Example</a>
</h6>
<pre class="programlisting">
<a href="../../containers/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">v1</span><span class="special">(</span><span class="number">5</span><span class="special">,</span> <span class="char">'a'</span><span class="special">);</span>
<a href="../../containers/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">v2</span><span class="special">(</span><span class="number">5</span><span class="special">,</span> <span class="char">'a'</span><span class="special">);</span>
<a href="../../containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">v1</span><span class="special">(</span><span class="number">5</span><span class="special">,</span> <span class="char">'a'</span><span class="special">);</span>
<a href="../../containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">v2</span><span class="special">(</span><span class="number">5</span><span class="special">,</span> <span class="char">'a'</span><span class="special">);</span>
<span class="identifier">assert</span><span class="special">(</span><span class="identifier">v1</span> <span class="special">==</span> <span class="identifier">v2</span><span class="special">);</span>
</pre>
</div>

View File

@ -4,7 +4,7 @@
<title>greater
than</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<65>1.<2E>Fusion 2.0">
<link rel="up" href="../comparison.html" title="Comparison">
<link rel="prev" href="less_than_equal.html" title="less
@ -34,7 +34,7 @@
Lexicographically compare two sequences.
</p>
<a name="fusion.sequences.operators.comparison.greater_than.synopsis"></a><h6>
<a name="id550938"></a>
<a name="id1078660"></a>
<a href="greater_than.html#fusion.sequences.operators.comparison.greater_than.synopsis">Synopsis</a>
</h6>
<pre class="programlisting">
@ -43,7 +43,7 @@
<span class="keyword">operator</span><span class="special">&gt;(</span><span class="identifier">Seq1</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">a</span><span class="special">,</span> <span class="identifier">Seq2</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">b</span><span class="special">);</span>
</pre>
<a name="fusion.sequences.operators.comparison.greater_than.parameters"></a><h6>
<a name="id551092"></a>
<a name="id1078796"></a>
<a href="greater_than.html#fusion.sequences.operators.comparison.greater_than.parameters">Parameters</a>
</h6>
<div class="informaltable"><table class="table">
@ -58,8 +58,8 @@
<th>Description</th>
</tr></thead>
<tbody><tr>
<td><tt class="computeroutput"><span class="identifier">a</span><span class="special">,</span>
<span class="identifier">b</span></tt></td>
<td><code class="computeroutput"><span class="identifier">a</span><span class="special">,</span>
<span class="identifier">b</span></code></td>
<td>Instances
of <a href="../../../sequences.html" title="Sequences">Sequence</a>
</td>
@ -68,7 +68,7 @@
</tr></tbody>
</table></div>
<a name="fusion.sequences.operators.comparison.greater_than.expression_semantics"></a><h6>
<a name="id551196"></a>
<a name="id1078888"></a>
<a href="greater_than.html#fusion.sequences.operators.comparison.greater_than.expression_semantics">Expression
Semantics</a>
</h6>
@ -76,16 +76,16 @@
<span class="identifier">a</span> <span class="special">&gt;</span> <span class="identifier">b</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>Requirements</b></span>:
<span class="bold"><strong>Requirements</strong></span>:
</p>
<p>
For each element, <tt class="computeroutput"><span class="identifier">e1</span></tt>,
in sequence <tt class="computeroutput"><span class="identifier">a</span></tt>, and for
each element, <tt class="computeroutput"><span class="identifier">e2</span></tt>, in
sequence <tt class="computeroutput"><span class="identifier">b</span></tt>, <tt class="computeroutput"><span class="identifier">a</span> <span class="special">&lt;</span> <span class="identifier">b</span></tt> is a valid expression returning a
For each element, <code class="computeroutput"><span class="identifier">e1</span></code>,
in sequence <code class="computeroutput"><span class="identifier">a</span></code>, and for
each element, <code class="computeroutput"><span class="identifier">e2</span></code>, in
sequence <code class="computeroutput"><span class="identifier">b</span></code>, <code class="computeroutput"><span class="identifier">a</span> <span class="special">&lt;</span> <span class="identifier">b</span></code> is a valid expression returning a
type that is convertible to bool.
</p>
<p>
@ -93,23 +93,23 @@
compile time error.
</p>
<p>
<span class="bold"><b>Semantics</b></span>: Returns b &lt; a.
<span class="bold"><strong>Semantics</strong></span>: Returns b &lt; a.
</p>
<a name="fusion.sequences.operators.comparison.greater_than.header"></a><h6>
<a name="id551364"></a>
<a name="id1079037"></a>
<a href="greater_than.html#fusion.sequences.operators.comparison.greater_than.header">Header</a>
</h6>
<pre class="programlisting">
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">sequence</span><span class="special">/</span><span class="identifier">comparison</span><span class="special">/</span><span class="identifier">less_equal</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
</pre>
<a name="fusion.sequences.operators.comparison.greater_than.example"></a><h6>
<a name="id551471"></a>
<a name="id1079129"></a>
<a href="greater_than.html#fusion.sequences.operators.comparison.greater_than.example">Example</a>
</h6>
<pre class="programlisting">
<a href="../../containers/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">float</span><span class="special">&gt;</span> <span class="identifier">v1</span><span class="special">(</span><span class="number">4</span><span class="special">,</span> <span class="number">3.3f</span><span class="special">);</span>
<a href="../../containers/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">short</span><span class="special">,</span> <span class="keyword">float</span><span class="special">&gt;</span> <span class="identifier">v2</span><span class="special">(</span><span class="number">5</span><span class="special">,</span> <span class="number">3.3f</span><span class="special">);</span>
<a href="../../containers/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">long</span><span class="special">,</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="identifier">v3</span><span class="special">(</span><span class="number">5</span><span class="special">,</span> <span class="number">4.4</span><span class="special">);</span>
<a href="../../containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">float</span><span class="special">&gt;</span> <span class="identifier">v1</span><span class="special">(</span><span class="number">4</span><span class="special">,</span> <span class="number">3.3f</span><span class="special">);</span>
<a href="../../containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special">&lt;</span><span class="keyword">short</span><span class="special">,</span> <span class="keyword">float</span><span class="special">&gt;</span> <span class="identifier">v2</span><span class="special">(</span><span class="number">5</span><span class="special">,</span> <span class="number">3.3f</span><span class="special">);</span>
<a href="../../containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special">&lt;</span><span class="keyword">long</span><span class="special">,</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="identifier">v3</span><span class="special">(</span><span class="number">5</span><span class="special">,</span> <span class="number">4.4</span><span class="special">);</span>
<span class="identifier">assert</span><span class="special">(</span><span class="identifier">v2</span> <span class="special">&gt;</span> <span class="identifier">v1</span><span class="special">);</span>
<span class="identifier">assert</span><span class="special">(</span><span class="identifier">v3</span> <span class="special">&gt;</span> <span class="identifier">v2</span><span class="special">);</span>
</pre>

View File

@ -4,7 +4,7 @@
<title>greater
than equal</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<65>1.<2E>Fusion 2.0">
<link rel="up" href="../comparison.html" title="Comparison">
<link rel="prev" href="greater_than.html" title="greater
@ -33,7 +33,7 @@
Lexicographically compare two sequences.
</p>
<a name="fusion.sequences.operators.comparison.greater_than_equal.synopsis"></a><h6>
<a name="id551821"></a>
<a name="id1079441"></a>
<a href="greater_than_equal.html#fusion.sequences.operators.comparison.greater_than_equal.synopsis">Synopsis</a>
</h6>
<pre class="programlisting">
@ -42,7 +42,7 @@
<span class="keyword">operator</span><span class="special">&gt;=(</span><span class="identifier">Seq1</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">a</span><span class="special">,</span> <span class="identifier">Seq2</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">b</span><span class="special">);</span>
</pre>
<a name="fusion.sequences.operators.comparison.greater_than_equal.parameters"></a><h6>
<a name="id551976"></a>
<a name="id1079579"></a>
<a href="greater_than_equal.html#fusion.sequences.operators.comparison.greater_than_equal.parameters">Parameters</a>
</h6>
<div class="informaltable"><table class="table">
@ -57,8 +57,8 @@
<th>Description</th>
</tr></thead>
<tbody><tr>
<td><tt class="computeroutput"><span class="identifier">a</span><span class="special">,</span>
<span class="identifier">b</span></tt></td>
<td><code class="computeroutput"><span class="identifier">a</span><span class="special">,</span>
<span class="identifier">b</span></code></td>
<td>Instances
of <a href="../../../sequences.html" title="Sequences">Sequence</a>
</td>
@ -67,7 +67,7 @@
</tr></tbody>
</table></div>
<a name="fusion.sequences.operators.comparison.greater_than_equal.expression_semantics"></a><h6>
<a name="id552080"></a>
<a name="id1079671"></a>
<a href="greater_than_equal.html#fusion.sequences.operators.comparison.greater_than_equal.expression_semantics">Expression
Semantics</a>
</h6>
@ -75,16 +75,16 @@
<span class="identifier">a</span> <span class="special">&gt;=</span> <span class="identifier">b</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>Requirements</b></span>:
<span class="bold"><strong>Requirements</strong></span>:
</p>
<p>
For each element, <tt class="computeroutput"><span class="identifier">e1</span></tt>,
in sequence <tt class="computeroutput"><span class="identifier">a</span></tt>, and for
each element, <tt class="computeroutput"><span class="identifier">e2</span></tt>, in
sequence <tt class="computeroutput"><span class="identifier">b</span></tt>, <tt class="computeroutput"><span class="identifier">a</span> <span class="special">&lt;</span> <span class="identifier">b</span></tt> is a valid expression returning a
For each element, <code class="computeroutput"><span class="identifier">e1</span></code>,
in sequence <code class="computeroutput"><span class="identifier">a</span></code>, and for
each element, <code class="computeroutput"><span class="identifier">e2</span></code>, in
sequence <code class="computeroutput"><span class="identifier">b</span></code>, <code class="computeroutput"><span class="identifier">a</span> <span class="special">&lt;</span> <span class="identifier">b</span></code> is a valid expression returning a
type that is convertible to bool.
</p>
<p>
@ -92,23 +92,23 @@
compile time error.
</p>
<p>
<span class="bold"><b>Semantics</b></span>: Returns !(a &lt; b).
<span class="bold"><strong>Semantics</strong></span>: Returns !(a &lt; b).
</p>
<a name="fusion.sequences.operators.comparison.greater_than_equal.header"></a><h6>
<a name="id552249"></a>
<a name="id1079819"></a>
<a href="greater_than_equal.html#fusion.sequences.operators.comparison.greater_than_equal.header">Header</a>
</h6>
<pre class="programlisting">
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">sequence</span><span class="special">/</span><span class="identifier">comparison</span><span class="special">/</span><span class="identifier">greater_equal</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
</pre>
<a name="fusion.sequences.operators.comparison.greater_than_equal.example"></a><h6>
<a name="id552356"></a>
<a name="id1079914"></a>
<a href="greater_than_equal.html#fusion.sequences.operators.comparison.greater_than_equal.example">Example</a>
</h6>
<pre class="programlisting">
<a href="../../containers/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">float</span><span class="special">&gt;</span> <span class="identifier">v1</span><span class="special">(</span><span class="number">4</span><span class="special">,</span> <span class="number">3.3f</span><span class="special">);</span>
<a href="../../containers/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">short</span><span class="special">,</span> <span class="keyword">float</span><span class="special">&gt;</span> <span class="identifier">v2</span><span class="special">(</span><span class="number">5</span><span class="special">,</span> <span class="number">3.3f</span><span class="special">);</span>
<a href="../../containers/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">long</span><span class="special">,</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="identifier">v3</span><span class="special">(</span><span class="number">5</span><span class="special">,</span> <span class="number">4.4</span><span class="special">);</span>
<a href="../../containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">float</span><span class="special">&gt;</span> <span class="identifier">v1</span><span class="special">(</span><span class="number">4</span><span class="special">,</span> <span class="number">3.3f</span><span class="special">);</span>
<a href="../../containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special">&lt;</span><span class="keyword">short</span><span class="special">,</span> <span class="keyword">float</span><span class="special">&gt;</span> <span class="identifier">v2</span><span class="special">(</span><span class="number">5</span><span class="special">,</span> <span class="number">3.3f</span><span class="special">);</span>
<a href="../../containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special">&lt;</span><span class="keyword">long</span><span class="special">,</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="identifier">v3</span><span class="special">(</span><span class="number">5</span><span class="special">,</span> <span class="number">4.4</span><span class="special">);</span>
<span class="identifier">assert</span><span class="special">(</span><span class="identifier">v2</span> <span class="special">&gt;=</span> <span class="identifier">v1</span><span class="special">);</span>
<span class="identifier">assert</span><span class="special">(</span><span class="identifier">v3</span> <span class="special">&gt;=</span> <span class="identifier">v2</span><span class="special">);</span>
</pre>

View File

@ -4,7 +4,7 @@
<title>less
than</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<65>1.<2E>Fusion 2.0">
<link rel="up" href="../comparison.html" title="Comparison">
<link rel="prev" href="not_equal.html" title="not
@ -34,7 +34,7 @@
Lexicographically compare two sequences.
</p>
<a name="fusion.sequences.operators.comparison.less_than.synopsis"></a><h6>
<a name="id549153"></a>
<a name="id1077081"></a>
<a href="less_than.html#fusion.sequences.operators.comparison.less_than.synopsis">Synopsis</a>
</h6>
<pre class="programlisting">
@ -43,7 +43,7 @@
<span class="keyword">operator</span><span class="special">&lt;(</span><span class="identifier">Seq1</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">a</span><span class="special">,</span> <span class="identifier">Seq2</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">b</span><span class="special">);</span>
</pre>
<a name="fusion.sequences.operators.comparison.less_than.parameters"></a><h6>
<a name="id549308"></a>
<a name="id1077217"></a>
<a href="less_than.html#fusion.sequences.operators.comparison.less_than.parameters">Parameters</a>
</h6>
<div class="informaltable"><table class="table">
@ -58,8 +58,8 @@
<th>Description</th>
</tr></thead>
<tbody><tr>
<td><tt class="computeroutput"><span class="identifier">a</span><span class="special">,</span>
<span class="identifier">b</span></tt></td>
<td><code class="computeroutput"><span class="identifier">a</span><span class="special">,</span>
<span class="identifier">b</span></code></td>
<td>Instances
of <a href="../../../sequences.html" title="Sequences">Sequence</a>
</td>
@ -68,7 +68,7 @@
</tr></tbody>
</table></div>
<a name="fusion.sequences.operators.comparison.less_than.expression_semantics"></a><h6>
<a name="id549412"></a>
<a name="id1077310"></a>
<a href="less_than.html#fusion.sequences.operators.comparison.less_than.expression_semantics">Expression
Semantics</a>
</h6>
@ -76,16 +76,16 @@
<span class="identifier">a</span> <span class="special">&lt;</span> <span class="identifier">b</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>Requirements</b></span>:
<span class="bold"><strong>Requirements</strong></span>:
</p>
<p>
For each element, <tt class="computeroutput"><span class="identifier">e1</span></tt>,
in sequence <tt class="computeroutput"><span class="identifier">a</span></tt>, and for
each element, <tt class="computeroutput"><span class="identifier">e2</span></tt>, in
sequence <tt class="computeroutput"><span class="identifier">b</span></tt>, <tt class="computeroutput"><span class="identifier">a</span> <span class="special">&lt;</span> <span class="identifier">b</span></tt> is a valid expression returning a
For each element, <code class="computeroutput"><span class="identifier">e1</span></code>,
in sequence <code class="computeroutput"><span class="identifier">a</span></code>, and for
each element, <code class="computeroutput"><span class="identifier">e2</span></code>, in
sequence <code class="computeroutput"><span class="identifier">b</span></code>, <code class="computeroutput"><span class="identifier">a</span> <span class="special">&lt;</span> <span class="identifier">b</span></code> is a valid expression returning a
type that is convertible to bool.
</p>
<p>
@ -93,25 +93,25 @@
compile time error.
</p>
<p>
<span class="bold"><b>Semantics</b></span>: Returns the lexicographical
comparison of between <tt class="computeroutput"><span class="identifier">a</span></tt>
and <tt class="computeroutput"><span class="identifier">b</span></tt>.
<span class="bold"><strong>Semantics</strong></span>: Returns the lexicographical
comparison of between <code class="computeroutput"><span class="identifier">a</span></code>
and <code class="computeroutput"><span class="identifier">b</span></code>.
</p>
<a name="fusion.sequences.operators.comparison.less_than.header"></a><h6>
<a name="id549599"></a>
<a name="id1077476"></a>
<a href="less_than.html#fusion.sequences.operators.comparison.less_than.header">Header</a>
</h6>
<pre class="programlisting">
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">sequence</span><span class="special">/</span><span class="identifier">comparison</span><span class="special">/</span><span class="identifier">less</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
</pre>
<a name="fusion.sequences.operators.comparison.less_than.example"></a><h6>
<a name="id549705"></a>
<a name="id1077569"></a>
<a href="less_than.html#fusion.sequences.operators.comparison.less_than.example">Example</a>
</h6>
<pre class="programlisting">
<a href="../../containers/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">float</span><span class="special">&gt;</span> <span class="identifier">v1</span><span class="special">(</span><span class="number">4</span><span class="special">,</span> <span class="number">3.3f</span><span class="special">);</span>
<a href="../../containers/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">short</span><span class="special">,</span> <span class="keyword">float</span><span class="special">&gt;</span> <span class="identifier">v2</span><span class="special">(</span><span class="number">5</span><span class="special">,</span> <span class="number">3.3f</span><span class="special">);</span>
<a href="../../containers/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">long</span><span class="special">,</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="identifier">v3</span><span class="special">(</span><span class="number">5</span><span class="special">,</span> <span class="number">4.4</span><span class="special">);</span>
<a href="../../containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">float</span><span class="special">&gt;</span> <span class="identifier">v1</span><span class="special">(</span><span class="number">4</span><span class="special">,</span> <span class="number">3.3f</span><span class="special">);</span>
<a href="../../containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special">&lt;</span><span class="keyword">short</span><span class="special">,</span> <span class="keyword">float</span><span class="special">&gt;</span> <span class="identifier">v2</span><span class="special">(</span><span class="number">5</span><span class="special">,</span> <span class="number">3.3f</span><span class="special">);</span>
<a href="../../containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special">&lt;</span><span class="keyword">long</span><span class="special">,</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="identifier">v3</span><span class="special">(</span><span class="number">5</span><span class="special">,</span> <span class="number">4.4</span><span class="special">);</span>
<span class="identifier">assert</span><span class="special">(</span><span class="identifier">v1</span> <span class="special">&lt;</span> <span class="identifier">v2</span><span class="special">);</span>
<span class="identifier">assert</span><span class="special">(</span><span class="identifier">v2</span> <span class="special">&lt;</span> <span class="identifier">v3</span><span class="special">);</span>
</pre>

View File

@ -4,7 +4,7 @@
<title>less
than equal</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<65>1.<2E>Fusion 2.0">
<link rel="up" href="../comparison.html" title="Comparison">
<link rel="prev" href="less_than.html" title="less
@ -34,7 +34,7 @@
Lexicographically compare two sequences.
</p>
<a name="fusion.sequences.operators.comparison.less_than_equal.synopsis"></a><h6>
<a name="id550054"></a>
<a name="id1077879"></a>
<a href="less_than_equal.html#fusion.sequences.operators.comparison.less_than_equal.synopsis">Synopsis</a>
</h6>
<pre class="programlisting">
@ -43,7 +43,7 @@
<span class="keyword">operator</span><span class="special">&lt;=(</span><span class="identifier">Seq1</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">a</span><span class="special">,</span> <span class="identifier">Seq2</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">b</span><span class="special">);</span>
</pre>
<a name="fusion.sequences.operators.comparison.less_than_equal.parameters"></a><h6>
<a name="id550210"></a>
<a name="id1078017"></a>
<a href="less_than_equal.html#fusion.sequences.operators.comparison.less_than_equal.parameters">Parameters</a>
</h6>
<div class="informaltable"><table class="table">
@ -58,8 +58,8 @@
<th>Description</th>
</tr></thead>
<tbody><tr>
<td><tt class="computeroutput"><span class="identifier">a</span><span class="special">,</span>
<span class="identifier">b</span></tt></td>
<td><code class="computeroutput"><span class="identifier">a</span><span class="special">,</span>
<span class="identifier">b</span></code></td>
<td>Instances
of <a href="../../../sequences.html" title="Sequences">Sequence</a>
</td>
@ -68,7 +68,7 @@
</tr></tbody>
</table></div>
<a name="fusion.sequences.operators.comparison.less_than_equal.expression_semantics"></a><h6>
<a name="id550315"></a>
<a name="id1078109"></a>
<a href="less_than_equal.html#fusion.sequences.operators.comparison.less_than_equal.expression_semantics">Expression
Semantics</a>
</h6>
@ -76,16 +76,16 @@
<span class="identifier">a</span> <span class="special">&lt;=</span> <span class="identifier">b</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>Requirements</b></span>:
<span class="bold"><strong>Requirements</strong></span>:
</p>
<p>
For each element, <tt class="computeroutput"><span class="identifier">e1</span></tt>,
in sequence <tt class="computeroutput"><span class="identifier">a</span></tt>, and for
each element, <tt class="computeroutput"><span class="identifier">e2</span></tt>, in
sequence <tt class="computeroutput"><span class="identifier">b</span></tt>, <tt class="computeroutput"><span class="identifier">a</span> <span class="special">&lt;</span> <span class="identifier">b</span></tt> is a valid expression returning a
For each element, <code class="computeroutput"><span class="identifier">e1</span></code>,
in sequence <code class="computeroutput"><span class="identifier">a</span></code>, and for
each element, <code class="computeroutput"><span class="identifier">e2</span></code>, in
sequence <code class="computeroutput"><span class="identifier">b</span></code>, <code class="computeroutput"><span class="identifier">a</span> <span class="special">&lt;</span> <span class="identifier">b</span></code> is a valid expression returning a
type that is convertible to bool.
</p>
<p>
@ -93,23 +93,23 @@
compile time error.
</p>
<p>
<span class="bold"><b>Semantics</b></span>: Returns !(b &lt; a).
<span class="bold"><strong>Semantics</strong></span>: Returns !(b &lt; a).
</p>
<a name="fusion.sequences.operators.comparison.less_than_equal.header"></a><h6>
<a name="id550483"></a>
<a name="id1078257"></a>
<a href="less_than_equal.html#fusion.sequences.operators.comparison.less_than_equal.header">Header</a>
</h6>
<pre class="programlisting">
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">sequence</span><span class="special">/</span><span class="identifier">comparison</span><span class="special">/</span><span class="identifier">less_equal</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
</pre>
<a name="fusion.sequences.operators.comparison.less_than_equal.example"></a><h6>
<a name="id550590"></a>
<a name="id1078350"></a>
<a href="less_than_equal.html#fusion.sequences.operators.comparison.less_than_equal.example">Example</a>
</h6>
<pre class="programlisting">
<a href="../../containers/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">float</span><span class="special">&gt;</span> <span class="identifier">v1</span><span class="special">(</span><span class="number">4</span><span class="special">,</span> <span class="number">3.3f</span><span class="special">);</span>
<a href="../../containers/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">short</span><span class="special">,</span> <span class="keyword">float</span><span class="special">&gt;</span> <span class="identifier">v2</span><span class="special">(</span><span class="number">5</span><span class="special">,</span> <span class="number">3.3f</span><span class="special">);</span>
<a href="../../containers/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">long</span><span class="special">,</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="identifier">v3</span><span class="special">(</span><span class="number">5</span><span class="special">,</span> <span class="number">4.4</span><span class="special">);</span>
<a href="../../containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">float</span><span class="special">&gt;</span> <span class="identifier">v1</span><span class="special">(</span><span class="number">4</span><span class="special">,</span> <span class="number">3.3f</span><span class="special">);</span>
<a href="../../containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special">&lt;</span><span class="keyword">short</span><span class="special">,</span> <span class="keyword">float</span><span class="special">&gt;</span> <span class="identifier">v2</span><span class="special">(</span><span class="number">5</span><span class="special">,</span> <span class="number">3.3f</span><span class="special">);</span>
<a href="../../containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special">&lt;</span><span class="keyword">long</span><span class="special">,</span> <span class="keyword">double</span><span class="special">&gt;</span> <span class="identifier">v3</span><span class="special">(</span><span class="number">5</span><span class="special">,</span> <span class="number">4.4</span><span class="special">);</span>
<span class="identifier">assert</span><span class="special">(</span><span class="identifier">v1</span> <span class="special">&lt;=</span> <span class="identifier">v2</span><span class="special">);</span>
<span class="identifier">assert</span><span class="special">(</span><span class="identifier">v2</span> <span class="special">&lt;=</span> <span class="identifier">v3</span><span class="special">);</span>
</pre>

View File

@ -4,7 +4,7 @@
<title>not
equal</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<65>1.<2E>Fusion 2.0">
<link rel="up" href="../comparison.html" title="Comparison">
<link rel="prev" href="equal.html" title="equal">
@ -33,7 +33,7 @@
Compare two sequences for inequality.
</p>
<a name="fusion.sequences.operators.comparison.not_equal.synopsis"></a><h6>
<a name="id548314"></a>
<a name="id1076339"></a>
<a href="not_equal.html#fusion.sequences.operators.comparison.not_equal.synopsis">Synopsis</a>
</h6>
<pre class="programlisting">
@ -42,7 +42,7 @@
<span class="keyword">operator</span><span class="special">!=(</span><span class="identifier">Seq1</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">a</span><span class="special">,</span> <span class="identifier">Seq2</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">b</span><span class="special">);</span>
</pre>
<a name="fusion.sequences.operators.comparison.not_equal.parameters"></a><h6>
<a name="id548468"></a>
<a name="id1076474"></a>
<a href="not_equal.html#fusion.sequences.operators.comparison.not_equal.parameters">Parameters</a>
</h6>
<div class="informaltable"><table class="table">
@ -57,8 +57,8 @@
<th>Description</th>
</tr></thead>
<tbody><tr>
<td><tt class="computeroutput"><span class="identifier">a</span><span class="special">,</span>
<span class="identifier">b</span></tt></td>
<td><code class="computeroutput"><span class="identifier">a</span><span class="special">,</span>
<span class="identifier">b</span></code></td>
<td>Instances
of <a href="../../../sequences.html" title="Sequences">Sequence</a>
</td>
@ -67,7 +67,7 @@
</tr></tbody>
</table></div>
<a name="fusion.sequences.operators.comparison.not_equal.expression_semantics"></a><h6>
<a name="id548571"></a>
<a name="id1076567"></a>
<a href="not_equal.html#fusion.sequences.operators.comparison.not_equal.expression_semantics">Expression
Semantics</a>
</h6>
@ -75,16 +75,16 @@
<span class="identifier">a</span> <span class="special">!=</span> <span class="identifier">b</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>Requirements</b></span>:
<span class="bold"><strong>Requirements</strong></span>:
</p>
<p>
For each element, <tt class="computeroutput"><span class="identifier">e1</span></tt>,
in sequence <tt class="computeroutput"><span class="identifier">a</span></tt>, and for
each element, <tt class="computeroutput"><span class="identifier">e2</span></tt>, in
sequence <tt class="computeroutput"><span class="identifier">b</span></tt>, <tt class="computeroutput"><span class="identifier">a</span> <span class="special">==</span> <span class="identifier">b</span></tt> is a valid expression returning a
For each element, <code class="computeroutput"><span class="identifier">e1</span></code>,
in sequence <code class="computeroutput"><span class="identifier">a</span></code>, and for
each element, <code class="computeroutput"><span class="identifier">e2</span></code>, in
sequence <code class="computeroutput"><span class="identifier">b</span></code>, <code class="computeroutput"><span class="identifier">a</span> <span class="special">==</span> <span class="identifier">b</span></code> is a valid expression returning a
type that is convertible to bool.
</p>
<p>
@ -92,25 +92,25 @@
compile time error.
</p>
<p>
<span class="bold"><b>Semantics</b></span>:
<span class="bold"><strong>Semantics</strong></span>:
</p>
<p>
Returns !(a == b).
</p>
<a name="fusion.sequences.operators.comparison.not_equal.header"></a><h6>
<a name="id548742"></a>
<a name="id1076574"></a>
<a href="not_equal.html#fusion.sequences.operators.comparison.not_equal.header">Header</a>
</h6>
<pre class="programlisting">
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">sequence</span><span class="special">/</span><span class="identifier">comparison</span><span class="special">/</span><span class="identifier">not_equal_to</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
</pre>
<a name="fusion.sequences.operators.comparison.not_equal.example"></a><h6>
<a name="id548847"></a>
<a name="id1076810"></a>
<a href="not_equal.html#fusion.sequences.operators.comparison.not_equal.example">Example</a>
</h6>
<pre class="programlisting">
<a href="../../containers/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">v3</span><span class="special">(</span><span class="number">5</span><span class="special">,</span> <span class="char">'b'</span><span class="special">);</span>
<a href="../../containers/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">t4</span><span class="special">(</span><span class="number">2</span><span class="special">,</span> <span class="char">'a'</span><span class="special">);</span>
<a href="../../containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">v3</span><span class="special">(</span><span class="number">5</span><span class="special">,</span> <span class="char">'b'</span><span class="special">);</span>
<a href="../../containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">t4</span><span class="special">(</span><span class="number">2</span><span class="special">,</span> <span class="char">'a'</span><span class="special">);</span>
<span class="identifier">assert</span><span class="special">(</span><span class="identifier">v1</span> <span class="special">!=</span> <span class="identifier">v3</span><span class="special">);</span>
<span class="identifier">assert</span><span class="special">(</span><span class="identifier">v1</span> <span class="special">!=</span> <span class="identifier">t4</span><span class="special">);</span>
<span class="identifier">assert</span><span class="special">(!(</span><span class="identifier">v1</span> <span class="special">!=</span> <span class="identifier">v2</span><span class="special">));</span>

View File

@ -3,7 +3,7 @@
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>I/O</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<65>1.<2E>Fusion 2.0">
<link rel="up" href="../operators.html" title="Operators">
<link rel="prev" href="../operators.html" title="Operators">
@ -30,25 +30,25 @@
<dt><span class="section"><a href="i_o/out.html">out</a></span></dt>
</dl></div>
<p>
The I/O operators: <tt class="computeroutput"><span class="special">&lt;&lt;</span></tt>
and <tt class="computeroutput"><span class="special">&gt;&gt;</span></tt> work generically
on all Fusion sequences. The global <tt class="computeroutput"><span class="keyword">operator</span><span class="special">&lt;&lt;</span></tt> has been overloaded for generic
The I/O operators: <code class="computeroutput"><span class="special">&lt;&lt;</span></code>
and <code class="computeroutput"><span class="special">&gt;&gt;</span></code> work generically
on all Fusion sequences. The global <code class="computeroutput"><span class="keyword">operator</span><span class="special">&lt;&lt;</span></code> has been overloaded for generic
output streams such that <span class="underline">_sequence</span>_s
are output by recursively calling <tt class="computeroutput"><span class="keyword">operator</span><span class="special">&lt;&lt;</span></tt> for each element. Analogously,
the global <tt class="computeroutput"><span class="keyword">operator</span><span class="special">&gt;&gt;</span></tt>
are output by recursively calling <code class="computeroutput"><span class="keyword">operator</span><span class="special">&lt;&lt;</span></code> for each element. Analogously,
the global <code class="computeroutput"><span class="keyword">operator</span><span class="special">&gt;&gt;</span></code>
has been overloaded to extract <span class="underline">_sequence</span>_s
from generic input streams by recursively calling <tt class="computeroutput"><span class="keyword">operator</span><span class="special">&gt;&gt;</span></tt> for each element.
from generic input streams by recursively calling <code class="computeroutput"><span class="keyword">operator</span><span class="special">&gt;&gt;</span></code> for each element.
</p>
<p>
The default delimiter between the elements is space, and the <a href="../../sequences.html" title="Sequences">Sequence</a>
is enclosed in parenthesis. For Example:
</p>
<pre class="programlisting">
<a href="../containers/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">float</span><span class="special">,</span> <span class="keyword">int</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&gt;</span> <span class="identifier">a</span><span class="special">(</span><span class="number">1.0f</span><span class="special">,</span> <span class="number">2</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">"Howdy folks!"</span><span class="special">);</span>
<a href="../containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special">&lt;</span><span class="keyword">float</span><span class="special">,</span> <span class="keyword">int</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&gt;</span> <span class="identifier">a</span><span class="special">(</span><span class="number">1.0f</span><span class="special">,</span> <span class="number">2</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">"Howdy folks!"</span><span class="special">);</span>
<span class="identifier">cout</span> <span class="special">&lt;&lt;</span> <span class="identifier">a</span><span class="special">;</span>
</pre>
<p>
outputs the <a href="../containers/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a> as: (1.0 2 Howdy folks!)
outputs the <a href="../containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a> as: (1.0 2 Howdy folks!)
</p>
<p>
The library defines three manipulators for changing the default behavior:
@ -56,23 +56,23 @@
<div class="variablelist">
<p class="title"><b>Manipulators</b></p>
<dl>
<dt><span class="term"><tt class="computeroutput"><span class="identifier">tuple_open</span><span class="special">(</span><span class="identifier">arg</span><span class="special">)</span></tt></span></dt>
<dt><span class="term"><code class="computeroutput"><span class="identifier">tuple_open</span><span class="special">(</span><span class="identifier">arg</span><span class="special">)</span></code></span></dt>
<dd>
Defines the character that is output before the first element.
</dd>
<dt><span class="term"><tt class="computeroutput"><span class="identifier">tuple_close</span><span class="special">(</span><span class="identifier">arg</span><span class="special">)</span></tt></span></dt>
<dt><span class="term"><code class="computeroutput"><span class="identifier">tuple_close</span><span class="special">(</span><span class="identifier">arg</span><span class="special">)</span></code></span></dt>
<dd>
Defines the character that is output after the last element.
</dd>
<dt><span class="term"><tt class="computeroutput"><span class="identifier">tuple_delimiter</span><span class="special">(</span><span class="identifier">arg</span><span class="special">)</span></tt></span></dt>
<dt><span class="term"><code class="computeroutput"><span class="identifier">tuple_delimiter</span><span class="special">(</span><span class="identifier">arg</span><span class="special">)</span></code></span></dt>
<dd>
Defines the delimiter character between elements.
</dd>
</dl>
</div>
<p>
The argument to <tt class="computeroutput"><span class="identifier">tuple_open</span></tt>,
<tt class="computeroutput"><span class="identifier">tuple_close</span></tt> and <tt class="computeroutput"><span class="identifier">tuple_delimiter</span></tt> may be a <tt class="computeroutput"><span class="keyword">char</span></tt>, <tt class="computeroutput"><span class="keyword">wchar_t</span></tt>,
The argument to <code class="computeroutput"><span class="identifier">tuple_open</span></code>,
<code class="computeroutput"><span class="identifier">tuple_close</span></code> and <code class="computeroutput"><span class="identifier">tuple_delimiter</span></code> may be a <code class="computeroutput"><span class="keyword">char</span></code>, <code class="computeroutput"><span class="keyword">wchar_t</span></code>,
a C-string, or a wide C-string.
</p>
<p>
@ -82,12 +82,12 @@
<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> <span class="identifier">tuple_open</span><span class="special">(</span><span class="char">'['</span><span class="special">)</span> <span class="special">&lt;&lt;</span> <span class="identifier">tuple_close</span><span class="special">(</span><span class="char">']'</span><span class="special">)</span> <span class="special">&lt;&lt;</span> <span class="identifier">tuple_delimiter</span><span class="special">(</span><span class="string">", "</span><span class="special">)</span> <span class="special">&lt;&lt;</span> <span class="identifier">a</span><span class="special">;</span>
</pre>
<p>
outputs the same <a href="../containers/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a>, <tt class="computeroutput"><span class="identifier">a</span></tt>
outputs the same <a href="../containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a>, <code class="computeroutput"><span class="identifier">a</span></code>
as: [1.0, 2, Howdy folks!]
</p>
<p>
The same manipulators work with <tt class="computeroutput"><span class="keyword">operator</span><span class="special">&gt;&gt;</span></tt> and <tt class="computeroutput"><span class="identifier">istream</span></tt>
as well. Suppose the <tt class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">cin</span></tt>
The same manipulators work with <code class="computeroutput"><span class="keyword">operator</span><span class="special">&gt;&gt;</span></code> and <code class="computeroutput"><span class="identifier">istream</span></code>
as well. Suppose the <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">cin</span></code>
stream contains the following data:
</p>
<pre class="programlisting">
@ -97,8 +97,8 @@
The code:
</p>
<pre class="programlisting">
<a href="../containers/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">i</span><span class="special">;</span>
<a href="../containers/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">j</span><span class="special">;</span>
<a href="../containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">i</span><span class="special">;</span>
<a href="../containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">j</span><span class="special">;</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">cin</span> <span class="special">&gt;&gt;</span> <span class="identifier">i</span><span class="special">;</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">cin</span> <span class="special">&gt;&gt;</span> <span class="identifier">set_open</span><span class="special">(</span><span class="char">'['</span><span class="special">)</span> <span class="special">&gt;&gt;</span> <span class="identifier">set_close</span><span class="special">(</span><span class="char">']'</span><span class="special">)</span> <span class="special">&gt;&gt;</span> <span class="identifier">set_delimiter</span><span class="special">(</span><span class="char">':'</span><span class="special">);</span>
@ -106,16 +106,16 @@
</pre>
<p>
reads the data into the <span class="underline">_vector</span>_s
<tt class="computeroutput"><span class="identifier">i</span></tt> and <tt class="computeroutput"><span class="identifier">j</span></tt>.
<code class="computeroutput"><span class="identifier">i</span></code> and <code class="computeroutput"><span class="identifier">j</span></code>.
</p>
<p>
Note that extracting <span class="underline">_sequence</span>_s
with <tt class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span></tt> or C-style string elements does
with <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span></code> or C-style string elements does
not generally work, since the streamed <a href="../../sequences.html" title="Sequences">Sequence</a>
representation may not be unambiguously parseable.
</p>
<a name="fusion.sequences.operators.i_o.header"></a><h5>
<a name="id545834"></a>
<a name="id1074150"></a>
<a href="i_o.html#fusion.sequences.operators.i_o.header">Header</a>
</h5>
<pre class="programlisting">

View File

@ -3,7 +3,7 @@
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>in</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<65>1.<2E>Fusion 2.0">
<link rel="up" href="../i_o.html" title="I/O">
<link rel="prev" href="../i_o.html" title="I/O">
@ -26,7 +26,7 @@
<div class="titlepage"><div><div><h5 class="title">
<a name="fusion.sequences.operators.i_o.in"></a><a href="in.html" title="in">in</a></h5></div></div></div>
<a name="fusion.sequences.operators.i_o.in.description"></a><h6>
<a name="id545949"></a>
<a name="id1074251"></a>
<a href="in.html#fusion.sequences.operators.i_o.in.description">Description</a>
</h6>
<p>
@ -34,7 +34,7 @@
stream.
</p>
<a name="fusion.sequences.operators.i_o.in.synopsis"></a><h6>
<a name="id545988"></a>
<a name="id1074285"></a>
<a href="in.html#fusion.sequences.operators.i_o.in.synopsis">Synopsis</a>
</h6>
<pre class="programlisting">
@ -43,7 +43,7 @@
<span class="keyword">operator</span><span class="special">&gt;&gt;(</span><span class="identifier">IStream</span><span class="special">&amp;</span> <span class="identifier">is</span><span class="special">,</span> <span class="identifier">Sequence</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
</pre>
<a name="fusion.sequences.operators.i_o.in.parameters"></a><h6>
<a name="id546134"></a>
<a name="id1074413"></a>
<a href="in.html#fusion.sequences.operators.i_o.in.parameters">Parameters</a>
</h6>
<div class="informaltable"><table class="table">
@ -73,7 +73,7 @@
</tbody>
</table></div>
<a name="fusion.sequences.operators.i_o.in.expression_semantics"></a><h6>
<a name="id546226"></a>
<a name="id1074495"></a>
<a href="in.html#fusion.sequences.operators.i_o.in.expression_semantics">Expression
Semantics</a>
</h6>
@ -81,26 +81,26 @@
<span class="identifier">is</span> <span class="special">&gt;&gt;</span> <span class="identifier">seq</span>
</pre>
<p>
<span class="bold"><b>Return type</b></span>: IStream&amp;
<span class="bold"><strong>Return type</strong></span>: IStream&amp;
</p>
<p>
<span class="bold"><b>Semantics</b></span>: For each element, <tt class="computeroutput"><span class="identifier">e</span></tt>, in sequence, <tt class="computeroutput"><span class="identifier">seq</span></tt>,
call <tt class="computeroutput"><span class="identifier">is</span> <span class="special">&gt;&gt;</span>
<span class="identifier">e</span></tt>.
<span class="bold"><strong>Semantics</strong></span>: For each element, <code class="computeroutput"><span class="identifier">e</span></code>, in sequence, <code class="computeroutput"><span class="identifier">seq</span></code>,
call <code class="computeroutput"><span class="identifier">is</span> <span class="special">&gt;&gt;</span>
<span class="identifier">e</span></code>.
</p>
<a name="fusion.sequences.operators.i_o.in.header"></a><h6>
<a name="id546342"></a>
<a name="id1074597"></a>
<a href="in.html#fusion.sequences.operators.i_o.in.header">Header</a>
</h6>
<pre class="programlisting">
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">sequence</span><span class="special">/</span><span class="identifier">io</span><span class="special">/</span><span class="identifier">in</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
</pre>
<a name="fusion.sequences.operators.i_o.in.example"></a><h6>
<a name="id546445"></a>
<a name="id1074688"></a>
<a href="in.html#fusion.sequences.operators.i_o.in.example">Example</a>
</h6>
<pre class="programlisting">
<a href="../../containers/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">v</span><span class="special">;</span>
<a href="../../containers/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special">&lt;</span><span class="keyword">int</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="keyword">char</span><span class="special">&gt;</span> <span class="identifier">v</span><span class="special">;</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">cin</span> <span class="special">&gt;&gt;</span> <span class="identifier">v</span><span class="special">;</span>
</pre>
</div>

View File

@ -3,7 +3,7 @@
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>out</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<65>1.<2E>Fusion 2.0">
<link rel="up" href="../i_o.html" title="I/O">
<link rel="prev" href="in.html" title="in">
@ -26,7 +26,7 @@
<div class="titlepage"><div><div><h5 class="title">
<a name="fusion.sequences.operators.i_o.out"></a><a href="out.html" title="out">out</a></h5></div></div></div>
<a name="fusion.sequences.operators.i_o.out.description"></a><h6>
<a name="id546604"></a>
<a name="id1074828"></a>
<a href="out.html#fusion.sequences.operators.i_o.out.description">Description</a>
</h6>
<p>
@ -34,7 +34,7 @@
stream.
</p>
<a name="fusion.sequences.operators.i_o.out.synopsis"></a><h6>
<a name="id546643"></a>
<a name="id1074862"></a>
<a href="out.html#fusion.sequences.operators.i_o.out.synopsis">Synopsis</a>
</h6>
<pre class="programlisting">
@ -43,7 +43,7 @@
<span class="keyword">operator</span><span class="special">&lt;&lt;(</span><span class="identifier">OStream</span><span class="special">&amp;</span> <span class="identifier">os</span><span class="special">,</span> <span class="identifier">Sequence</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
</pre>
<a name="fusion.sequences.operators.i_o.out.parameters"></a><h6>
<a name="id546788"></a>
<a name="id1074990"></a>
<a href="out.html#fusion.sequences.operators.i_o.out.parameters">Parameters</a>
</h6>
<div class="informaltable"><table class="table">
@ -73,7 +73,7 @@
</tbody>
</table></div>
<a name="fusion.sequences.operators.i_o.out.expression_semantics"></a><h6>
<a name="id546879"></a>
<a name="id1075070"></a>
<a href="out.html#fusion.sequences.operators.i_o.out.expression_semantics">Expression
Semantics</a>
</h6>
@ -81,26 +81,26 @@
<span class="identifier">os</span> <span class="special">&lt;&lt;</span> <span class="identifier">seq</span>
</pre>
<p>
<span class="bold"><b>Return type</b></span>: OStream&amp;
<span class="bold"><strong>Return type</strong></span>: OStream&amp;
</p>
<p>
<span class="bold"><b>Semantics</b></span>: For each element, <tt class="computeroutput"><span class="identifier">e</span></tt>, in sequence, <tt class="computeroutput"><span class="identifier">seq</span></tt>,
call <tt class="computeroutput"><span class="identifier">os</span> <span class="special">&lt;&lt;</span>
<span class="identifier">e</span></tt>.
<span class="bold"><strong>Semantics</strong></span>: For each element, <code class="computeroutput"><span class="identifier">e</span></code>, in sequence, <code class="computeroutput"><span class="identifier">seq</span></code>,
call <code class="computeroutput"><span class="identifier">os</span> <span class="special">&lt;&lt;</span>
<span class="identifier">e</span></code>.
</p>
<a name="fusion.sequences.operators.i_o.out.header"></a><h6>
<a name="id546994"></a>
<a name="id1075172"></a>
<a href="out.html#fusion.sequences.operators.i_o.out.header">Header</a>
</h6>
<pre class="programlisting">
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">sequence</span><span class="special">/</span><span class="identifier">io</span><span class="special">/</span><span class="identifier">out</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
</pre>
<a name="fusion.sequences.operators.i_o.out.example"></a><h6>
<a name="id547098"></a>
<a name="id1075264"></a>
<a href="out.html#fusion.sequences.operators.i_o.out.example">Example</a>
</h6>
<pre class="programlisting">
<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> <a href="../../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">123</span><span class="special">,</span> <span class="string">"Hello"</span><span class="special">,</span> <span class="char">'x'</span><span class="special">)</span> <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> <a href="../../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">123</span><span class="special">,</span> <span class="string">"Hello"</span><span class="special">,</span> <span class="char">'x'</span><span class="special">)</span> <span class="special">&lt;&lt;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span>
</pre>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>