Sync from trunk (except adapt class)

[SVN r56714]
This commit is contained in:
Joel de Guzman
2009-10-11 16:12:54 +00:00
parent 7615b492af
commit 46fc256c2f
257 changed files with 13732 additions and 16068 deletions

View File

@ -3,11 +3,12 @@
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Concepts</title>
<link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.0">
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
<link rel="home" href="../../index.html" title="Chapter<65>1.<2E>Fusion 2.0">
<link rel="up" href="../sequence.html" title="Sequence">
<link rel="prev" href="../sequence.html" title="Sequence">
<link rel="next" href="concepts/forward_sequence.html" title="Forward Sequence">
<link rel="previous" href="../sequence.html" title="Sequence">
<link rel="next" href="concepts/forward_sequence.html" title="Forward
Sequence">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
@ -22,10 +23,13 @@
<div class="spirit-nav">
<a accesskey="p" href="../sequence.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../sequence.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="concepts/forward_sequence.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Concepts">
<div class="titlepage"><div><div><h3 class="title">
<a name="fusion.sequence.concepts"></a><a class="link" href="concepts.html" title="Concepts">Concepts</a>
</h3></div></div></div>
<div class="section" lang="en">
<div class="titlepage">
<div><div><h3 class="title">
<a name="fusion.sequence.concepts"></a><a href="concepts.html" title="Concepts">Concepts</a>
</h3></div></div>
<div></div>
</div>
<div class="toc"><dl>
<dt><span class="section"><a href="concepts/forward_sequence.html">Forward
Sequence</a></span></dt>
@ -39,25 +43,31 @@
<p>
Fusion Sequences are organized into a hierarchy of concepts.
</p>
<a name="fusion.sequence.concepts.traversal"></a><h5>
<a name="id578511"></a>
<a class="link" href="concepts.html#fusion.sequence.concepts.traversal">Traversal</a>
</h5>
<a name="fusion.sequence.concepts.traversal"></a><h4>
<a name="id442201"></a>
<a href="concepts.html#fusion.sequence.concepts.traversal">Traversal</a>
</h4>
<p>
Fusion's sequence traversal related concepts parallel Fusion's <a class="link" href="../iterator/concepts.html" title="Concepts">Iterator
Concepts</a>. <a class="link" href="concepts/forward_sequence.html" title="Forward Sequence">Forward
Sequence</a> is the most basic concept. <a class="link" href="concepts/bidirectional_sequence.html" title="Bidirectional Sequence">Bidirectional
Sequence</a> is a refinement of <a class="link" href="concepts/forward_sequence.html" title="Forward Sequence">Forward
Sequence</a>. <a class="link" href="concepts/random_access_sequence.html" title="Random Access Sequence">Random
Access Sequence</a> is a refinement of <a class="link" href="concepts/bidirectional_sequence.html" title="Bidirectional Sequence">Bidirectional
Fusion's sequence traversal related concepts parallel Fusion's <a href="../iterator/concepts.html" title="Concepts">Iterator
Concepts</a>. <a href="concepts/forward_sequence.html" title="Forward
Sequence">Forward
Sequence</a> is the most basic concept. <a href="concepts/bidirectional_sequence.html" title="Bidirectional
Sequence">Bidirectional
Sequence</a> is a refinement of <a href="concepts/forward_sequence.html" title="Forward
Sequence">Forward
Sequence</a>. <a href="concepts/random_access_sequence.html" title="Random
Access Sequence">Random
Access Sequence</a> is a refinement of <a href="concepts/bidirectional_sequence.html" title="Bidirectional
Sequence">Bidirectional
Sequence</a>. These concepts pertain to sequence traversal.
</p>
<a name="fusion.sequence.concepts.associativity"></a><h5>
<a name="id578556"></a>
<a class="link" href="concepts.html#fusion.sequence.concepts.associativity">Associativity</a>
</h5>
<a name="fusion.sequence.concepts.associativity"></a><h4>
<a name="id442286"></a>
<a href="concepts.html#fusion.sequence.concepts.associativity">Associativity</a>
</h4>
<p>
The <a class="link" href="concepts/associative_sequence.html" title="Associative Sequence">Associative
The <a href="concepts/associative_sequence.html" title="Associative
Sequence">Associative
Sequence</a> concept is orthogonal to traversal. An Associative Sequence
allows efficient retrieval of elements based on keys.
</p>

View File

@ -1,12 +1,14 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Associative Sequence</title>
<title>Associative
Sequence</title>
<link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.0">
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
<link rel="home" href="../../../index.html" title="Chapter<65>1.<2E>Fusion 2.0">
<link rel="up" href="../concepts.html" title="Concepts">
<link rel="prev" href="random_access_sequence.html" title="Random Access Sequence">
<link rel="previous" href="random_access_sequence.html" title="Random
Access Sequence">
<link rel="next" href="../intrinsic.html" title="Intrinsic">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@ -22,15 +24,19 @@
<div class="spirit-nav">
<a accesskey="p" href="random_access_sequence.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../intrinsic.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Associative Sequence">
<div class="titlepage"><div><div><h4 class="title">
<a name="fusion.sequence.concepts.associative_sequence"></a><a class="link" href="associative_sequence.html" title="Associative Sequence">Associative
<div class="section" lang="en">
<div class="titlepage">
<div><div><h4 class="title">
<a name="fusion.sequence.concepts.associative_sequence"></a><a href="associative_sequence.html" title="Associative
Sequence">Associative
Sequence</a>
</h4></div></div></div>
<a name="fusion.sequence.concepts.associative_sequence.description"></a><h6>
<a name="id584329"></a>
<a class="link" href="associative_sequence.html#fusion.sequence.concepts.associative_sequence.description">Description</a>
</h6>
</h4></div></div>
<div></div>
</div>
<a name="fusion.sequence.concepts.associative_sequence.description"></a><h5>
<a name="id447542"></a>
<a href="associative_sequence.html#fusion.sequence.concepts.associative_sequence.description">Description</a>
</h5>
<p>
An Associative Sequence allows efficient retrieval of elements based on
keys. Like associative sequences in <a href="http://www.boost.org/libs/mpl/index.html" target="_top">MPL</a>,
@ -43,36 +49,36 @@
there is no associated ordering relation and the runtime value of the keys
themselves do not have any effect on the associativity of the sequence.
</p>
<div class="variablelist" title="Notation">
<div class="variablelist">
<p class="title"><b>Notation</b></p>
<dl>
<dt><span class="term"><code class="computeroutput"><span class="identifier">s</span></code></span></dt>
<dt><span class="term"><tt class="computeroutput"><span class="identifier">s</span></tt></span></dt>
<dd><p>
An Associative Sequence
</p></dd>
<dt><span class="term"><code class="computeroutput"><span class="identifier">S</span></code></span></dt>
<dt><span class="term"><tt class="computeroutput"><span class="identifier">S</span></tt></span></dt>
<dd><p>
An Associative Sequence type
</p></dd>
<dt><span class="term"><code class="computeroutput"><span class="identifier">K</span></code></span></dt>
<dt><span class="term"><tt class="computeroutput"><span class="identifier">K</span></tt></span></dt>
<dd><p>
An arbitrary <span class="emphasis"><em>key</em></span> type
</p></dd>
<dt><span class="term"><code class="computeroutput"><span class="identifier">o</span></code></span></dt>
<dt><span class="term"><tt class="computeroutput"><span class="identifier">o</span></tt></span></dt>
<dd><p>
An arbitrary object
</p></dd>
<dt><span class="term"><code class="computeroutput"><span class="identifier">e</span></code></span></dt>
<dt><span class="term"><tt class="computeroutput"><span class="identifier">e</span></tt></span></dt>
<dd><p>
A Sequence element
</p></dd>
</dl>
</div>
<a name="fusion.sequence.concepts.associative_sequence.valid_expressions"></a><h6>
<a name="id584467"></a>
<a class="link" href="associative_sequence.html#fusion.sequence.concepts.associative_sequence.valid_expressions">Valid
<a name="fusion.sequence.concepts.associative_sequence.valid_expressions"></a><h5>
<a name="id447735"></a>
<a href="associative_sequence.html#fusion.sequence.concepts.associative_sequence.valid_expressions">Valid
Expressions</a>
</h6>
</h5>
<p>
For any Associative Sequence the following expressions must be valid:
</p>
@ -84,236 +90,173 @@
<col>
</colgroup>
<thead><tr>
<th>
<p>
<th><p>
Expression
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Return type
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Type Requirements
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Runtime Complexity
</p>
</th>
</p></th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<code class="computeroutput"><a class="link" href="../intrinsic/functions/has_key.html" title="has_key"><code class="computeroutput"><span class="identifier">has_key</span></code></a><span class="special">&lt;</span><span class="identifier">K</span><span class="special">&gt;(</span><span class="identifier">s</span><span class="special">)</span></code>
</p>
</td>
<td>
<p>
<td><p>
<tt class="computeroutput"><a href="../intrinsic/functions/has_key.html" title="has_key"><tt class="computeroutput"><span class="identifier">has_key</span></tt></a><span class="special">&lt;</span><span class="identifier">K</span><span class="special">&gt;(</span><span class="identifier">s</span><span class="special">)</span></tt>
</p></td>
<td><p>
<a href="http://www.boost.org/libs/mpl/doc/refmanual/integral-constant.html" target="_top">MPL
Boolean Constant</a>. Convertible to bool.
</p>
</td>
<td>
<p>
</p>
</td>
<td>
<p>
</p></td>
<td><p>
</p></td>
<td><p>
Constant
</p>
</td>
</p></td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><a class="link" href="../intrinsic/functions/at_key.html" title="at_key"><code class="computeroutput"><span class="identifier">at_key</span></code></a><span class="special">&lt;</span><span class="identifier">K</span><span class="special">&gt;(</span><span class="identifier">s</span><span class="special">)</span></code>
</p>
</td>
<td>
<p>
<td><p>
<tt class="computeroutput"><a href="../intrinsic/functions/at_key.html" title="at_key"><tt class="computeroutput"><span class="identifier">at_key</span></tt></a><span class="special">&lt;</span><span class="identifier">K</span><span class="special">&gt;(</span><span class="identifier">s</span><span class="special">)</span></tt>
</p></td>
<td><p>
Any type
</p>
</td>
<td>
<p>
</p>
</td>
<td>
<p>
</p></td>
<td><p>
</p></td>
<td><p>
Constant
</p>
</td>
</p></td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><a class="link" href="../intrinsic/functions/at_key.html" title="at_key"><code class="computeroutput"><span class="identifier">at_key</span></code></a><span class="special">&lt;</span><span class="identifier">K</span><span class="special">&gt;(</span><span class="identifier">s</span><span class="special">)</span>
<span class="special">=</span> <span class="identifier">o</span></code>
</p>
</td>
<td>
<p>
<td><p>
<tt class="computeroutput"><a href="../intrinsic/functions/at_key.html" title="at_key"><tt class="computeroutput"><span class="identifier">at_key</span></tt></a><span class="special">&lt;</span><span class="identifier">K</span><span class="special">&gt;(</span><span class="identifier">s</span><span class="special">)</span>
<span class="special">=</span> <span class="identifier">o</span></tt>
</p></td>
<td><p>
Any type
</p>
</td>
<td>
<p>
<code class="computeroutput"><span class="identifier">s</span></code> is mutable and
<code class="computeroutput"><span class="identifier">e</span> <span class="special">=</span>
<span class="identifier">o</span></code>, where <code class="computeroutput"><span class="identifier">e</span></code> is the first element in the
</p></td>
<td><p>
<tt class="computeroutput"><span class="identifier">s</span></tt> is mutable and
<tt class="computeroutput"><span class="identifier">e</span> <span class="special">=</span>
<span class="identifier">o</span></tt>, where <tt class="computeroutput"><span class="identifier">e</span></tt> is the first element in the
sequence, is a valid expression.
</p>
</td>
<td>
<p>
</p></td>
<td><p>
Constant
</p>
</td>
</p></td>
</tr>
</tbody>
</table></div>
<a name="fusion.sequence.concepts.associative_sequence.result_type_expressions"></a><h6>
<a name="id584754"></a>
<a class="link" href="associative_sequence.html#fusion.sequence.concepts.associative_sequence.result_type_expressions">Result
<a name="fusion.sequence.concepts.associative_sequence.result_type_expressions"></a><h5>
<a name="id448116"></a>
<a href="associative_sequence.html#fusion.sequence.concepts.associative_sequence.result_type_expressions">Result
Type Expressions</a>
</h6>
</h5>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
<th><p>
Expression
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Compile Time Complexity
</p>
</th>
</p></th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<code class="computeroutput"><a class="link" href="../intrinsic/metafunctions/has_key.html" title="has_key"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">has_key</span></code></a><span class="special">&lt;</span><span class="identifier">S</span><span class="special">,</span>
<span class="identifier">K</span><span class="special">&gt;::</span><span class="identifier">type</span></code>
</p>
</td>
<td>
<p>
<td><p>
<tt class="computeroutput"><a href="../intrinsic/metafunctions/has_key.html" title="has_key"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">has_key</span></tt></a><span class="special">&lt;</span><span class="identifier">S</span><span class="special">,</span>
<span class="identifier">K</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
</p></td>
<td><p>
Amortized constant time
</p>
</td>
</p></td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><a class="link" href="../intrinsic/metafunctions/at_key.html" title="at_key"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at_key</span></code></a><span class="special">&lt;</span><span class="identifier">S</span><span class="special">,</span>
<span class="identifier">K</span><span class="special">&gt;::</span><span class="identifier">type</span></code>
</p>
</td>
<td>
<p>
<td><p>
<tt class="computeroutput"><a href="../intrinsic/metafunctions/at_key.html" title="at_key"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at_key</span></tt></a><span class="special">&lt;</span><span class="identifier">S</span><span class="special">,</span>
<span class="identifier">K</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
</p></td>
<td><p>
Amortized constant time
</p>
</td>
</p></td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><a class="link" href="../intrinsic/metafunctions/value_at_key.html" title="value_at_key"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">value_at_key</span></code></a><span class="special">&lt;</span><span class="identifier">S</span><span class="special">,</span>
<span class="identifier">K</span><span class="special">&gt;::</span><span class="identifier">type</span></code>
</p>
</td>
<td>
<p>
<td><p>
<tt class="computeroutput"><a href="../intrinsic/metafunctions/value_at_key.html" title="value_at_key"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">value_at_key</span></tt></a><span class="special">&lt;</span><span class="identifier">S</span><span class="special">,</span>
<span class="identifier">K</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
</p></td>
<td><p>
Amortized constant time
</p>
</td>
</p></td>
</tr>
</tbody>
</table></div>
<div class="sidebar">
<p class="title"><b></b></p>
<p>
<span class="inlinemediaobject"><img src="../../../images/note.png" alt="note"></span> <code class="computeroutput"><a class="link" href="../intrinsic/metafunctions/at_key.html" title="at_key"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at_key</span></code></a><span class="special">&lt;</span><span class="identifier">S</span><span class="special">,</span> <span class="identifier">K</span><span class="special">&gt;</span></code> returns the actual type returned by
<code class="computeroutput"><a class="link" href="../intrinsic/functions/at_key.html" title="at_key"><code class="computeroutput"><span class="identifier">at_key</span></code></a><span class="special">&lt;</span><span class="identifier">K</span><span class="special">&gt;(</span><span class="identifier">s</span><span class="special">)</span></code>. In
<div class="sidebar"><p>
<span class="inlinemediaobject"><img src="images/note.png" alt="note"></span> <tt class="computeroutput"><a href="../intrinsic/metafunctions/at_key.html" title="at_key"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at_key</span></tt></a><span class="special">&lt;</span><span class="identifier">S</span><span class="special">,</span> <span class="identifier">K</span><span class="special">&gt;</span></tt> returns the actual type returned by
<tt class="computeroutput"><a href="../intrinsic/functions/at_key.html" title="at_key"><tt class="computeroutput"><span class="identifier">at_key</span></tt></a><span class="special">&lt;</span><span class="identifier">K</span><span class="special">&gt;(</span><span class="identifier">s</span><span class="special">)</span></tt>. In
most cases, this is a reference. Hence, there is no way to know the exact
element type using <code class="computeroutput"><a class="link" href="../intrinsic/metafunctions/at_key.html" title="at_key"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at_key</span></code></a><span class="special">&lt;</span><span class="identifier">S</span><span class="special">,</span> <span class="identifier">K</span><span class="special">&gt;</span></code>.The element at <code class="computeroutput"><span class="identifier">K</span></code>
element type using <tt class="computeroutput"><a href="../intrinsic/metafunctions/at_key.html" title="at_key"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at_key</span></tt></a><span class="special">&lt;</span><span class="identifier">S</span><span class="special">,</span> <span class="identifier">K</span><span class="special">&gt;</span></tt>.The element at <tt class="computeroutput"><span class="identifier">K</span></tt>
may actually be a reference to begin with. For this purpose, you can use
<code class="computeroutput"><a class="link" href="../intrinsic/metafunctions/value_at_key.html" title="value_at_key"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">value_at_key</span></code></a><span class="special">&lt;</span><span class="identifier">S</span><span class="special">,</span> <span class="identifier">N</span><span class="special">&gt;</span></code>.
</p>
</div>
<a name="fusion.sequence.concepts.associative_sequence.expression_semantics"></a><h6>
<a name="id585157"></a>
<a class="link" href="associative_sequence.html#fusion.sequence.concepts.associative_sequence.expression_semantics">Expression
<tt class="computeroutput"><a href="../intrinsic/metafunctions/value_at_key.html" title="value_at_key"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">value_at_key</span></tt></a><span class="special">&lt;</span><span class="identifier">S</span><span class="special">,</span> <span class="identifier">N</span><span class="special">&gt;</span></tt>.
</p></div>
<a name="fusion.sequence.concepts.associative_sequence.expression_semantics"></a><h5>
<a name="id448687"></a>
<a href="associative_sequence.html#fusion.sequence.concepts.associative_sequence.expression_semantics">Expression
Semantics</a>
</h6>
</h5>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
<th><p>
Expression
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Semantics
</p>
</th>
</p></th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<code class="computeroutput"><a class="link" href="../intrinsic/functions/has_key.html" title="has_key"><code class="computeroutput"><span class="identifier">has_key</span></code></a><span class="special">&lt;</span><span class="identifier">K</span><span class="special">&gt;(</span><span class="identifier">s</span><span class="special">)</span></code>
</p>
</td>
<td>
<p>
A boolean Integral Constant <code class="computeroutput"><span class="identifier">c</span></code>
such that <code class="computeroutput"><span class="identifier">c</span><span class="special">::</span><span class="identifier">value</span> <span class="special">==</span>
<span class="keyword">true</span></code> if and only if there
is one or more elements with the key <code class="computeroutput"><span class="identifier">k</span></code>
in <code class="computeroutput"><span class="identifier">s</span></code>; see <a class="link" href="../intrinsic/functions/has_key.html" title="has_key"><code class="computeroutput"><span class="identifier">has_key</span></code></a>.
</p>
</td>
<td><p>
<tt class="computeroutput"><a href="../intrinsic/functions/has_key.html" title="has_key"><tt class="computeroutput"><span class="identifier">has_key</span></tt></a><span class="special">&lt;</span><span class="identifier">K</span><span class="special">&gt;(</span><span class="identifier">s</span><span class="special">)</span></tt>
</p></td>
<td><p>
A boolean Integral Constant <tt class="computeroutput"><span class="identifier">c</span></tt>
such that <tt class="computeroutput"><span class="identifier">c</span><span class="special">::</span><span class="identifier">value</span> <span class="special">==</span>
<span class="keyword">true</span></tt> if and only if there
is one or more elements with the key <tt class="computeroutput"><span class="identifier">k</span></tt>
in <tt class="computeroutput"><span class="identifier">s</span></tt>; see <a href="../intrinsic/functions/has_key.html" title="has_key"><tt class="computeroutput"><span class="identifier">has_key</span></tt></a>.
</p></td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><a class="link" href="../intrinsic/functions/at_key.html" title="at_key"><code class="computeroutput"><span class="identifier">at_key</span></code></a><span class="special">&lt;</span><span class="identifier">K</span><span class="special">&gt;(</span><span class="identifier">s</span><span class="special">)</span></code>
</p>
</td>
<td>
<p>
The element associated with the key <code class="computeroutput"><span class="identifier">K</span></code>
in the sequence <code class="computeroutput"><span class="identifier">s</span></code>;
see <a class="link" href="../intrinsic/functions/at.html" title="at"><code class="computeroutput"><span class="identifier">at</span></code></a>.
</p>
</td>
<td><p>
<tt class="computeroutput"><a href="../intrinsic/functions/at_key.html" title="at_key"><tt class="computeroutput"><span class="identifier">at_key</span></tt></a><span class="special">&lt;</span><span class="identifier">K</span><span class="special">&gt;(</span><span class="identifier">s</span><span class="special">)</span></tt>
</p></td>
<td><p>
The element associated with the key <tt class="computeroutput"><span class="identifier">K</span></tt>
in the sequence <tt class="computeroutput"><span class="identifier">s</span></tt>;
see <a href="../intrinsic/functions/at.html" title="at"><tt class="computeroutput"><span class="identifier">at</span></tt></a>.
</p></td>
</tr>
</tbody>
</table></div>
<a name="fusion.sequence.concepts.associative_sequence.models"></a><h6>
<a name="id585376"></a>
<a class="link" href="associative_sequence.html#fusion.sequence.concepts.associative_sequence.models">Models</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem"><a class="link" href="../../container/set.html" title="set"><code class="computeroutput"><span class="identifier">set</span></code></a></li>
<li class="listitem"><a class="link" href="../../container/map.html" title="map"><code class="computeroutput"><span class="identifier">map</span></code></a></li>
<a name="fusion.sequence.concepts.associative_sequence.models"></a><h5>
<a name="id449008"></a>
<a href="associative_sequence.html#fusion.sequence.concepts.associative_sequence.models">Models</a>
</h5>
<div class="itemizedlist"><ul type="disc">
<li><a href="../../container/set.html" title="set"><tt class="computeroutput"><span class="identifier">set</span></tt></a></li>
<li><a href="../../container/map.html" title="map"><tt class="computeroutput"><span class="identifier">map</span></tt></a></li>
</ul></div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>

View File

@ -1,13 +1,16 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Bidirectional Sequence</title>
<title>Bidirectional
Sequence</title>
<link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.0">
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
<link rel="home" href="../../../index.html" title="Chapter<65>1.<2E>Fusion 2.0">
<link rel="up" href="../concepts.html" title="Concepts">
<link rel="prev" href="forward_sequence.html" title="Forward Sequence">
<link rel="next" href="random_access_sequence.html" title="Random Access Sequence">
<link rel="previous" href="forward_sequence.html" title="Forward
Sequence">
<link rel="next" href="random_access_sequence.html" title="Random
Access Sequence">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
@ -22,56 +25,64 @@
<div class="spirit-nav">
<a accesskey="p" href="forward_sequence.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="random_access_sequence.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Bidirectional Sequence">
<div class="titlepage"><div><div><h4 class="title">
<a name="fusion.sequence.concepts.bidirectional_sequence"></a><a class="link" href="bidirectional_sequence.html" title="Bidirectional Sequence">Bidirectional
<div class="section" lang="en">
<div class="titlepage">
<div><div><h4 class="title">
<a name="fusion.sequence.concepts.bidirectional_sequence"></a><a href="bidirectional_sequence.html" title="Bidirectional
Sequence">Bidirectional
Sequence</a>
</h4></div></div></div>
<a name="fusion.sequence.concepts.bidirectional_sequence.description"></a><h6>
<a name="id581141"></a>
<a class="link" href="bidirectional_sequence.html#fusion.sequence.concepts.bidirectional_sequence.description">Description</a>
</h6>
</h4></div></div>
<div></div>
</div>
<a name="fusion.sequence.concepts.bidirectional_sequence.description"></a><h5>
<a name="id444601"></a>
<a href="bidirectional_sequence.html#fusion.sequence.concepts.bidirectional_sequence.description">Description</a>
</h5>
<p>
A Bidirectional Sequence is a <a class="link" href="forward_sequence.html" title="Forward Sequence">Forward
Sequence</a> whose iterators model <a class="link" href="../../iterator/concepts/bidirectional_iterator.html" title="Bidirectional Iterator">Bidirectional
A Bidirectional Sequence is a <a href="forward_sequence.html" title="Forward
Sequence">Forward
Sequence</a> whose iterators model <a href="../../iterator/concepts/bidirectional_iterator.html" title="Bidirectional
Iterator">Bidirectional
Iterator</a>.
</p>
<a name="fusion.sequence.concepts.bidirectional_sequence.refinement_of"></a><h6>
<a name="id581172"></a>
<a class="link" href="bidirectional_sequence.html#fusion.sequence.concepts.bidirectional_sequence.refinement_of">Refinement
<a name="fusion.sequence.concepts.bidirectional_sequence.refinement_of"></a><h5>
<a name="id444649"></a>
<a href="bidirectional_sequence.html#fusion.sequence.concepts.bidirectional_sequence.refinement_of">Refinement
of</a>
</h6>
</h5>
<p>
<a class="link" href="forward_sequence.html" title="Forward Sequence">Forward Sequence</a>
<a href="forward_sequence.html" title="Forward
Sequence">Forward Sequence</a>
</p>
<div class="variablelist" title="Notation">
<div class="variablelist">
<p class="title"><b>Notation</b></p>
<dl>
<dt><span class="term"><code class="computeroutput"><span class="identifier">s</span></code></span></dt>
<dt><span class="term"><tt class="computeroutput"><span class="identifier">s</span></tt></span></dt>
<dd><p>
A Forward Sequence
</p></dd>
<dt><span class="term"><code class="computeroutput"><span class="identifier">S</span></code></span></dt>
<dt><span class="term"><tt class="computeroutput"><span class="identifier">S</span></tt></span></dt>
<dd><p>
A Forward Sequence type
</p></dd>
<dt><span class="term"><code class="computeroutput"><span class="identifier">o</span></code></span></dt>
<dt><span class="term"><tt class="computeroutput"><span class="identifier">o</span></tt></span></dt>
<dd><p>
An arbitrary object
</p></dd>
<dt><span class="term"><code class="computeroutput"><span class="identifier">e</span></code></span></dt>
<dt><span class="term"><tt class="computeroutput"><span class="identifier">e</span></tt></span></dt>
<dd><p>
A Sequence element
</p></dd>
</dl>
</div>
<a name="fusion.sequence.concepts.bidirectional_sequence.valid_expressions"></a><h6>
<a name="id581275"></a>
<a class="link" href="bidirectional_sequence.html#fusion.sequence.concepts.bidirectional_sequence.valid_expressions">Valid
<a name="fusion.sequence.concepts.bidirectional_sequence.valid_expressions"></a><h5>
<a name="id444786"></a>
<a href="bidirectional_sequence.html#fusion.sequence.concepts.bidirectional_sequence.valid_expressions">Valid
Expressions</a>
</h6>
</h5>
<p>
In addition to the requirements defined in <a class="link" href="forward_sequence.html" title="Forward Sequence">Forward
In addition to the requirements defined in <a href="forward_sequence.html" title="Forward
Sequence">Forward
Sequence</a>, for any Bidirectional Sequence the following must be met:
</p>
<div class="informaltable"><table class="table">
@ -82,190 +93,137 @@
<col>
</colgroup>
<thead><tr>
<th>
<p>
<th><p>
Expression
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Return type
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Type Requirements
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Runtime Complexity
</p>
</th>
</p></th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<code class="computeroutput"><a class="link" href="../intrinsic/functions/begin.html" title="begin"><code class="computeroutput"><span class="identifier">begin</span></code></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../../iterator/concepts/bidirectional_iterator.html" title="Bidirectional Iterator">Bidirectional
<td><p>
<tt class="computeroutput"><a href="../intrinsic/functions/begin.html" title="begin"><tt class="computeroutput"><span class="identifier">begin</span></tt></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
</p></td>
<td><p>
<a href="../../iterator/concepts/bidirectional_iterator.html" title="Bidirectional
Iterator">Bidirectional
Iterator</a>
</p>
</td>
<td>
<p>
</p>
</td>
<td>
<p>
</p></td>
<td><p>
</p></td>
<td><p>
Constant
</p>
</td>
</p></td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><a class="link" href="../intrinsic/functions/end.html" title="end"><code class="computeroutput"><span class="identifier">end</span></code></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../../iterator/concepts/bidirectional_iterator.html" title="Bidirectional Iterator">Bidirectional
<td><p>
<tt class="computeroutput"><a href="../intrinsic/functions/end.html" title="end"><tt class="computeroutput"><span class="identifier">end</span></tt></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
</p></td>
<td><p>
<a href="../../iterator/concepts/bidirectional_iterator.html" title="Bidirectional
Iterator">Bidirectional
Iterator</a>
</p>
</td>
<td>
<p>
</p>
</td>
<td>
<p>
</p></td>
<td><p>
</p></td>
<td><p>
Constant
</p>
</td>
</p></td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><a class="link" href="../intrinsic/functions/back.html" title="back"><code class="computeroutput"><span class="identifier">back</span></code></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></code>
</p>
</td>
<td>
<p>
<td><p>
<tt class="computeroutput"><a href="../intrinsic/functions/back.html" title="back"><tt class="computeroutput"><span class="identifier">back</span></tt></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
</p></td>
<td><p>
Any type
</p>
</td>
<td>
<p>
</p>
</td>
<td>
<p>
</p></td>
<td><p>
</p></td>
<td><p>
Constant
</p>
</td>
</p></td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><a class="link" href="../intrinsic/functions/back.html" title="back"><code class="computeroutput"><span class="identifier">back</span></code></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span>
<span class="special">=</span> <span class="identifier">o</span></code>
</p>
</td>
<td>
<p>
<td><p>
<tt class="computeroutput"><a href="../intrinsic/functions/back.html" title="back"><tt class="computeroutput"><span class="identifier">back</span></tt></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span>
<span class="special">=</span> <span class="identifier">o</span></tt>
</p></td>
<td><p>
Any type
</p>
</td>
<td>
<p>
<code class="computeroutput"><span class="identifier">s</span></code> is mutable and
<code class="computeroutput"><span class="identifier">e</span> <span class="special">=</span>
<span class="identifier">o</span></code>, where <code class="computeroutput"><span class="identifier">e</span></code> is the first element in the
</p></td>
<td><p>
<tt class="computeroutput"><span class="identifier">s</span></tt> is mutable and
<tt class="computeroutput"><span class="identifier">e</span> <span class="special">=</span>
<span class="identifier">o</span></tt>, where <tt class="computeroutput"><span class="identifier">e</span></tt> is the first element in the
sequence, is a valid expression.
</p>
</td>
<td>
<p>
</p></td>
<td><p>
Constant
</p>
</td>
</p></td>
</tr>
</tbody>
</table></div>
<a name="fusion.sequence.concepts.bidirectional_sequence.result_type_expressions"></a><h6>
<a name="id581599"></a>
<a class="link" href="bidirectional_sequence.html#fusion.sequence.concepts.bidirectional_sequence.result_type_expressions">Result
<a name="fusion.sequence.concepts.bidirectional_sequence.result_type_expressions"></a><h5>
<a name="id445223"></a>
<a href="bidirectional_sequence.html#fusion.sequence.concepts.bidirectional_sequence.result_type_expressions">Result
Type Expressions</a>
</h6>
</h5>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
<th><p>
Expression
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Compile Time Complexity
</p>
</th>
</p></th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<code class="computeroutput"><a class="link" href="../intrinsic/metafunctions/begin.html" title="begin"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">begin</span></code></a><span class="special">&lt;</span><span class="identifier">S</span><span class="special">&gt;::</span><span class="identifier">type</span></code>
</p>
</td>
<td>
<p>
<td><p>
<tt class="computeroutput"><a href="../intrinsic/metafunctions/begin.html" title="begin"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">begin</span></tt></a><span class="special">&lt;</span><span class="identifier">S</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
</p></td>
<td><p>
Amortized constant time
</p>
</td>
</p></td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><a class="link" href="../intrinsic/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">&lt;</span><span class="identifier">S</span><span class="special">&gt;::</span><span class="identifier">type</span></code>
</p>
</td>
<td>
<p>
<td><p>
<tt class="computeroutput"><a href="../intrinsic/metafunctions/end.html" title="end"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">end</span></tt></a><span class="special">&lt;</span><span class="identifier">S</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
</p></td>
<td><p>
Amortized constant time
</p>
</td>
</p></td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><a class="link" href="../intrinsic/metafunctions/back.html" title="back"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">back</span></code></a><span class="special">&lt;</span><span class="identifier">S</span><span class="special">&gt;::</span><span class="identifier">type</span></code>
</p>
</td>
<td>
<p>
<td><p>
<tt class="computeroutput"><a href="../intrinsic/metafunctions/back.html" title="back"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">back</span></tt></a><span class="special">&lt;</span><span class="identifier">S</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
</p></td>
<td><p>
Amortized constant time
</p>
</td>
</p></td>
</tr>
</tbody>
</table></div>
<a name="fusion.sequence.concepts.bidirectional_sequence.expression_semantics"></a><h6>
<a name="id581802"></a>
<a class="link" href="bidirectional_sequence.html#fusion.sequence.concepts.bidirectional_sequence.expression_semantics">Expression
<a name="fusion.sequence.concepts.bidirectional_sequence.expression_semantics"></a><h5>
<a name="id445497"></a>
<a href="bidirectional_sequence.html#fusion.sequence.concepts.bidirectional_sequence.expression_semantics">Expression
Semantics</a>
</h6>
</h5>
<p>
The semantics of an expression are defined only where they differ from,
or are not defined in <a class="link" href="forward_sequence.html" title="Forward Sequence">Forward
or are not defined in <a href="forward_sequence.html" title="Forward
Sequence">Forward
Sequence</a>.
</p>
<div class="informaltable"><table class="table">
@ -274,49 +232,41 @@
<col>
</colgroup>
<thead><tr>
<th>
<p>
<th><p>
Expression
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Semantics
</p>
</th>
</p></th>
</tr></thead>
<tbody><tr>
<td>
<p>
<code class="computeroutput"><a class="link" href="../intrinsic/functions/back.html" title="back"><code class="computeroutput"><span class="identifier">back</span></code></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></code>
</p>
</td>
<td>
<p>
The last element in the sequence; see <a class="link" href="../intrinsic/functions/back.html" title="back"><code class="computeroutput"><span class="identifier">back</span></code></a>.
</p>
</td>
<td><p>
<tt class="computeroutput"><a href="../intrinsic/functions/back.html" title="back"><tt class="computeroutput"><span class="identifier">back</span></tt></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
</p></td>
<td><p>
The last element in the sequence; see <a href="../intrinsic/functions/back.html" title="back"><tt class="computeroutput"><span class="identifier">back</span></tt></a>.
</p></td>
</tr></tbody>
</table></div>
<a name="fusion.sequence.concepts.bidirectional_sequence.models"></a><h6>
<a name="id581908"></a>
<a class="link" href="bidirectional_sequence.html#fusion.sequence.concepts.bidirectional_sequence.models">Models</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem"><a class="link" href="../../adapted/std__pair.html" title="std::pair"><code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span></code></a></li>
<li class="listitem"><a class="link" href="../../adapted/boost__array.html" title="boost::array"><code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">array</span></code></a></li>
<li class="listitem"><a class="link" href="../../container/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a></li>
<li class="listitem"><a class="link" href="../../view/reverse_view.html" title="reverse_view"><code class="computeroutput"><span class="identifier">reverse_view</span></code></a></li>
<li class="listitem">
<a class="link" href="../../view/iterator_range.html" title="iterator_range"><code class="computeroutput"><span class="identifier">iterator_range</span></code></a>
<a name="fusion.sequence.concepts.bidirectional_sequence.models"></a><h5>
<a name="id445649"></a>
<a href="bidirectional_sequence.html#fusion.sequence.concepts.bidirectional_sequence.models">Models</a>
</h5>
<div class="itemizedlist"><ul type="disc">
<li><a href="../../adapted/std__pair.html" title="std::pair"><tt class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span></tt></a></li>
<li><a href="../../adapted/boost__array.html" title="boost::array"><tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">array</span></tt></a></li>
<li><a href="../../container/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a></li>
<li><a href="../../view/reverse_view.html" title="reverse_view"><tt class="computeroutput"><span class="identifier">reverse_view</span></tt></a></li>
<li>
<a href="../../view/iterator_range.html" title="iterator_range"><tt class="computeroutput"><span class="identifier">iterator_range</span></tt></a>
(where adapted sequence is a Bidirectional Sequence)
</li>
<li class="listitem">
<a class="link" href="../../view/transform_view.html" title="transform_view"><code class="computeroutput"><span class="identifier">transform_view</span></code></a>
<li>
<a href="../../view/transform_view.html" title="transform_view"><tt class="computeroutput"><span class="identifier">transform_view</span></tt></a>
(where adapted sequence is a Bidirectional Sequence)
</li>
<li class="listitem">
<a class="link" href="../../view/zip_view.html" title="zip_view"><code class="computeroutput"><span class="identifier">zip_view</span></code></a>
<li>
<a href="../../view/zip_view.html" title="zip_view"><tt class="computeroutput"><span class="identifier">zip_view</span></tt></a>
(where adapted sequences are models Bidirectional Sequence)
</li>
</ul></div>

View File

@ -1,13 +1,15 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Forward Sequence</title>
<title>Forward
Sequence</title>
<link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.0">
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
<link rel="home" href="../../../index.html" title="Chapter<65>1.<2E>Fusion 2.0">
<link rel="up" href="../concepts.html" title="Concepts">
<link rel="prev" href="../concepts.html" title="Concepts">
<link rel="next" href="bidirectional_sequence.html" title="Bidirectional Sequence">
<link rel="previous" href="../concepts.html" title="Concepts">
<link rel="next" href="bidirectional_sequence.html" title="Bidirectional
Sequence">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
@ -22,15 +24,19 @@
<div class="spirit-nav">
<a accesskey="p" href="../concepts.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="bidirectional_sequence.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Forward Sequence">
<div class="titlepage"><div><div><h4 class="title">
<a name="fusion.sequence.concepts.forward_sequence"></a><a class="link" href="forward_sequence.html" title="Forward Sequence">Forward
<div class="section" lang="en">
<div class="titlepage">
<div><div><h4 class="title">
<a name="fusion.sequence.concepts.forward_sequence"></a><a href="forward_sequence.html" title="Forward
Sequence">Forward
Sequence</a>
</h4></div></div></div>
<a name="fusion.sequence.concepts.forward_sequence.description"></a><h6>
<a name="id578587"></a>
<a class="link" href="forward_sequence.html#fusion.sequence.concepts.forward_sequence.description">Description</a>
</h6>
</h4></div></div>
<div></div>
</div>
<a name="fusion.sequence.concepts.forward_sequence.description"></a><h5>
<a name="id442346"></a>
<a href="forward_sequence.html#fusion.sequence.concepts.forward_sequence.description">Description</a>
</h5>
<p>
A Forward Sequence is a Sequence whose elements are arranged in a definite
order. The ordering is guaranteed not to change from iteration to iteration.
@ -38,32 +44,32 @@
equality (if the container's element type is Equality Comparable) and of
lexicographical ordering (if the container's element type is LessThan Comparable).
</p>
<div class="variablelist" title="Notation">
<div class="variablelist">
<p class="title"><b>Notation</b></p>
<dl>
<dt><span class="term"><code class="computeroutput"><span class="identifier">s</span></code></span></dt>
<dt><span class="term"><tt class="computeroutput"><span class="identifier">s</span></tt></span></dt>
<dd><p>
A Forward Sequence
</p></dd>
<dt><span class="term"><code class="computeroutput"><span class="identifier">S</span></code></span></dt>
<dt><span class="term"><tt class="computeroutput"><span class="identifier">S</span></tt></span></dt>
<dd><p>
A Forward Sequence type
</p></dd>
<dt><span class="term"><code class="computeroutput"><span class="identifier">o</span></code></span></dt>
<dt><span class="term"><tt class="computeroutput"><span class="identifier">o</span></tt></span></dt>
<dd><p>
An arbitrary object
</p></dd>
<dt><span class="term"><code class="computeroutput"><span class="identifier">e</span></code></span></dt>
<dt><span class="term"><tt class="computeroutput"><span class="identifier">e</span></tt></span></dt>
<dd><p>
A Sequence element
</p></dd>
</dl>
</div>
<a name="fusion.sequence.concepts.forward_sequence.valid_expressions"></a><h6>
<a name="id578686"></a>
<a class="link" href="forward_sequence.html#fusion.sequence.concepts.forward_sequence.valid_expressions">Valid
<a name="fusion.sequence.concepts.forward_sequence.valid_expressions"></a><h5>
<a name="id442473"></a>
<a href="forward_sequence.html#fusion.sequence.concepts.forward_sequence.valid_expressions">Valid
Expressions</a>
</h6>
</h5>
<p>
For any Forward Sequence the following expressions must be valid:
</p>
@ -75,383 +81,281 @@
<col>
</colgroup>
<thead><tr>
<th>
<p>
<th><p>
Expression
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Return type
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Type Requirements
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Runtime Complexity
</p>
</th>
</p></th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<code class="computeroutput"><a class="link" href="../intrinsic/functions/begin.html" title="begin"><code class="computeroutput"><span class="identifier">begin</span></code></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../../iterator/concepts/forward_iterator.html" title="Forward Iterator">Forward
<td><p>
<tt class="computeroutput"><a href="../intrinsic/functions/begin.html" title="begin"><tt class="computeroutput"><span class="identifier">begin</span></tt></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
</p></td>
<td><p>
<a href="../../iterator/concepts/forward_iterator.html" title="Forward
Iterator">Forward
Iterator</a>
</p>
</td>
<td>
<p>
</p>
</td>
<td>
<p>
</p></td>
<td><p>
</p></td>
<td><p>
Constant
</p>
</td>
</p></td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><a class="link" href="../intrinsic/functions/end.html" title="end"><code class="computeroutput"><span class="identifier">end</span></code></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../../iterator/concepts/forward_iterator.html" title="Forward Iterator">Forward
<td><p>
<tt class="computeroutput"><a href="../intrinsic/functions/end.html" title="end"><tt class="computeroutput"><span class="identifier">end</span></tt></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
</p></td>
<td><p>
<a href="../../iterator/concepts/forward_iterator.html" title="Forward
Iterator">Forward
Iterator</a>
</p>
</td>
<td>
<p>
</p>
</td>
<td>
<p>
</p></td>
<td><p>
</p></td>
<td><p>
Constant
</p>
</td>
</p></td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><a class="link" href="../intrinsic/functions/size.html" title="size"><code class="computeroutput"><span class="identifier">size</span></code></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></code>
</p>
</td>
<td>
<p>
<td><p>
<tt class="computeroutput"><a href="../intrinsic/functions/size.html" title="size"><tt class="computeroutput"><span class="identifier">size</span></tt></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
</p></td>
<td><p>
<a href="http://www.boost.org/libs/mpl/doc/refmanual/integral-constant.html" target="_top">MPL
Integral Constant</a>. Convertible to int.
</p>
</td>
<td>
<p>
</p>
</td>
<td>
<p>
</p></td>
<td><p>
</p></td>
<td><p>
Constant
</p>
</td>
</p></td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><a class="link" href="../intrinsic/functions/empty.html" title="empty"><code class="computeroutput"><span class="identifier">empty</span></code></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></code>
</p>
</td>
<td>
<p>
<td><p>
<tt class="computeroutput"><a href="../intrinsic/functions/empty.html" title="empty"><tt class="computeroutput"><span class="identifier">empty</span></tt></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
</p></td>
<td><p>
<a href="http://www.boost.org/libs/mpl/doc/refmanual/integral-constant.html" target="_top">MPL
Boolean Constant</a>. Convertible to bool.
</p>
</td>
<td>
<p>
</p>
</td>
<td>
<p>
</p></td>
<td><p>
</p></td>
<td><p>
Constant
</p>
</td>
</p></td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><a class="link" href="../intrinsic/functions/front.html" title="front"><code class="computeroutput"><span class="identifier">front</span></code></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></code>
</p>
</td>
<td>
<p>
<td><p>
<tt class="computeroutput"><a href="../intrinsic/functions/front.html" title="front"><tt class="computeroutput"><span class="identifier">front</span></tt></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
</p></td>
<td><p>
Any type
</p>
</td>
<td>
<p>
</p>
</td>
<td>
<p>
</p></td>
<td><p>
</p></td>
<td><p>
Constant
</p>
</td>
</p></td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><a class="link" href="../intrinsic/functions/front.html" title="front"><code class="computeroutput"><span class="identifier">front</span></code></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span>
<span class="special">=</span> <span class="identifier">o</span></code>
</p>
</td>
<td>
<p>
<td><p>
<tt class="computeroutput"><a href="../intrinsic/functions/front.html" title="front"><tt class="computeroutput"><span class="identifier">front</span></tt></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span>
<span class="special">=</span> <span class="identifier">o</span></tt>
</p></td>
<td><p>
Any type
</p>
</td>
<td>
<p>
<code class="computeroutput"><span class="identifier">s</span></code> is mutable and
<code class="computeroutput"><span class="identifier">e</span> <span class="special">=</span>
<span class="identifier">o</span></code>, where <code class="computeroutput"><span class="identifier">e</span></code> is the first element in the
</p></td>
<td><p>
<tt class="computeroutput"><span class="identifier">s</span></tt> is mutable and
<tt class="computeroutput"><span class="identifier">e</span> <span class="special">=</span>
<span class="identifier">o</span></tt>, where <tt class="computeroutput"><span class="identifier">e</span></tt> is the first element in the
sequence, is a valid expression.
</p>
</td>
<td>
<p>
</p></td>
<td><p>
Constant
</p>
</td>
</p></td>
</tr>
</tbody>
</table></div>
<a name="fusion.sequence.concepts.forward_sequence.result_type_expressions"></a><h6>
<a name="id579120"></a>
<a class="link" href="forward_sequence.html#fusion.sequence.concepts.forward_sequence.result_type_expressions">Result
<a name="fusion.sequence.concepts.forward_sequence.result_type_expressions"></a><h5>
<a name="id443053"></a>
<a href="forward_sequence.html#fusion.sequence.concepts.forward_sequence.result_type_expressions">Result
Type Expressions</a>
</h6>
</h5>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
<th><p>
Expression
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Compile Time Complexity
</p>
</th>
</p></th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<code class="computeroutput"><a class="link" href="../intrinsic/metafunctions/begin.html" title="begin"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">begin</span></code></a><span class="special">&lt;</span><span class="identifier">S</span><span class="special">&gt;::</span><span class="identifier">type</span></code>
</p>
</td>
<td>
<p>
<td><p>
<tt class="computeroutput"><a href="../intrinsic/metafunctions/begin.html" title="begin"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">begin</span></tt></a><span class="special">&lt;</span><span class="identifier">S</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
</p></td>
<td><p>
Amortized constant time
</p>
</td>
</p></td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><a class="link" href="../intrinsic/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">&lt;</span><span class="identifier">S</span><span class="special">&gt;::</span><span class="identifier">type</span></code>
</p>
</td>
<td>
<p>
<td><p>
<tt class="computeroutput"><a href="../intrinsic/metafunctions/end.html" title="end"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">end</span></tt></a><span class="special">&lt;</span><span class="identifier">S</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
</p></td>
<td><p>
Amortized constant time
</p>
</td>
</p></td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><a class="link" href="../intrinsic/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">&lt;</span><span class="identifier">S</span><span class="special">&gt;::</span><span class="identifier">type</span></code>
</p>
</td>
<td>
<p>
<td><p>
<tt class="computeroutput"><a href="../intrinsic/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">&lt;</span><span class="identifier">S</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
</p></td>
<td><p>
Unspecified
</p>
</td>
</p></td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><a class="link" href="../intrinsic/metafunctions/empty.html" title="empty"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">empty</span></code></a><span class="special">&lt;</span><span class="identifier">S</span><span class="special">&gt;::</span><span class="identifier">type</span></code>
</p>
</td>
<td>
<p>
<td><p>
<tt class="computeroutput"><a href="../intrinsic/metafunctions/empty.html" title="empty"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">empty</span></tt></a><span class="special">&lt;</span><span class="identifier">S</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
</p></td>
<td><p>
Constant time
</p>
</td>
</p></td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><a class="link" href="../intrinsic/metafunctions/front.html" title="front"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">front</span></code></a><span class="special">&lt;</span><span class="identifier">S</span><span class="special">&gt;::</span><span class="identifier">type</span></code>
</p>
</td>
<td>
<p>
<td><p>
<tt class="computeroutput"><a href="../intrinsic/metafunctions/front.html" title="front"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">front</span></tt></a><span class="special">&lt;</span><span class="identifier">S</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
</p></td>
<td><p>
Amortized constant time
</p>
</td>
</p></td>
</tr>
</tbody>
</table></div>
<a name="fusion.sequence.concepts.forward_sequence.expression_semantics"></a><h6>
<a name="id580382"></a>
<a class="link" href="forward_sequence.html#fusion.sequence.concepts.forward_sequence.expression_semantics">Expression
<a name="fusion.sequence.concepts.forward_sequence.expression_semantics"></a><h5>
<a name="id443468"></a>
<a href="forward_sequence.html#fusion.sequence.concepts.forward_sequence.expression_semantics">Expression
Semantics</a>
</h6>
</h5>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
<th><p>
Expression
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Semantics
</p>
</th>
</p></th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<code class="computeroutput"><a class="link" href="../intrinsic/functions/begin.html" title="begin"><code class="computeroutput"><span class="identifier">begin</span></code></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></code>
</p>
</td>
<td>
<p>
An iterator to the first element of the sequence; see <a class="link" href="../intrinsic/functions/begin.html" title="begin"><code class="computeroutput"><span class="identifier">begin</span></code></a>.
</p>
</td>
<td><p>
<tt class="computeroutput"><a href="../intrinsic/functions/begin.html" title="begin"><tt class="computeroutput"><span class="identifier">begin</span></tt></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
</p></td>
<td><p>
An iterator to the first element of the sequence; see <a href="../intrinsic/functions/begin.html" title="begin"><tt class="computeroutput"><span class="identifier">begin</span></tt></a>.
</p></td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><a class="link" href="../intrinsic/functions/end.html" title="end"><code class="computeroutput"><span class="identifier">end</span></code></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></code>
</p>
</td>
<td>
<p>
A past-the-end iterator to the sequence; see <a class="link" href="../intrinsic/functions/end.html" title="end"><code class="computeroutput"><span class="identifier">end</span></code></a>.
</p>
</td>
<td><p>
<tt class="computeroutput"><a href="../intrinsic/functions/end.html" title="end"><tt class="computeroutput"><span class="identifier">end</span></tt></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
</p></td>
<td><p>
A past-the-end iterator to the sequence; see <a href="../intrinsic/functions/end.html" title="end"><tt class="computeroutput"><span class="identifier">end</span></tt></a>.
</p></td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><a class="link" href="../intrinsic/functions/size.html" title="size"><code class="computeroutput"><span class="identifier">size</span></code></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></code>
</p>
</td>
<td>
<p>
The size of the sequence; see <a class="link" href="../intrinsic/functions/size.html" title="size"><code class="computeroutput"><span class="identifier">size</span></code></a>.
</p>
</td>
<td><p>
<tt class="computeroutput"><a href="../intrinsic/functions/size.html" title="size"><tt class="computeroutput"><span class="identifier">size</span></tt></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
</p></td>
<td><p>
The size of the sequence; see <a href="../intrinsic/functions/size.html" title="size"><tt class="computeroutput"><span class="identifier">size</span></tt></a>.
</p></td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><a class="link" href="../intrinsic/functions/empty.html" title="empty"><code class="computeroutput"><span class="identifier">empty</span></code></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></code>
</p>
</td>
<td>
<p>
A boolean Integral Constant <code class="computeroutput"><span class="identifier">c</span></code>
such that <code class="computeroutput"><span class="identifier">c</span><span class="special">::</span><span class="identifier">value</span> <span class="special">==</span>
<span class="keyword">true</span></code> if and only if the
sequence is empty; see <a class="link" href="../intrinsic/functions/empty.html" title="empty"><code class="computeroutput"><span class="identifier">empty</span></code></a>.
</p>
</td>
<td><p>
<tt class="computeroutput"><a href="../intrinsic/functions/empty.html" title="empty"><tt class="computeroutput"><span class="identifier">empty</span></tt></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
</p></td>
<td><p>
A boolean Integral Constant <tt class="computeroutput"><span class="identifier">c</span></tt>
such that <tt class="computeroutput"><span class="identifier">c</span><span class="special">::</span><span class="identifier">value</span> <span class="special">==</span>
<span class="keyword">true</span></tt> if and only if the
sequence is empty; see <a href="../intrinsic/functions/empty.html" title="empty"><tt class="computeroutput"><span class="identifier">empty</span></tt></a>.
</p></td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><a class="link" href="../intrinsic/functions/front.html" title="front"><code class="computeroutput"><span class="identifier">front</span></code></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></code>
</p>
</td>
<td>
<p>
The first element in the sequence; see <a class="link" href="../intrinsic/functions/front.html" title="front"><code class="computeroutput"><span class="identifier">front</span></code></a>.
</p>
</td>
<td><p>
<tt class="computeroutput"><a href="../intrinsic/functions/front.html" title="front"><tt class="computeroutput"><span class="identifier">front</span></tt></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
</p></td>
<td><p>
The first element in the sequence; see <a href="../intrinsic/functions/front.html" title="front"><tt class="computeroutput"><span class="identifier">front</span></tt></a>.
</p></td>
</tr>
</tbody>
</table></div>
<a name="fusion.sequence.concepts.forward_sequence.invariants"></a><h6>
<a name="id580711"></a>
<a class="link" href="forward_sequence.html#fusion.sequence.concepts.forward_sequence.invariants">Invariants</a>
</h6>
<a name="fusion.sequence.concepts.forward_sequence.invariants"></a><h5>
<a name="id443935"></a>
<a href="forward_sequence.html#fusion.sequence.concepts.forward_sequence.invariants">Invariants</a>
</h5>
<p>
For any Forward Sequence s the following invariants always hold:
</p>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem">
<code class="computeroutput"><span class="special">[</span><a class="link" href="../intrinsic/functions/begin.html" title="begin"><code class="computeroutput"><span class="identifier">begin</span></code></a><span class="special">(</span><span class="identifier">s</span><span class="special">),</span> <a class="link" href="../intrinsic/functions/end.html" title="end"><code class="computeroutput"><span class="identifier">end</span></code></a><span class="special">(</span><span class="identifier">s</span><span class="special">))</span></code> is always a valid range.
<div class="itemizedlist"><ul type="disc">
<li>
<tt class="computeroutput"><span class="special">[</span><a href="../intrinsic/functions/begin.html" title="begin"><tt class="computeroutput"><span class="identifier">begin</span></tt></a><span class="special">(</span><span class="identifier">s</span><span class="special">),</span> <a href="../intrinsic/functions/end.html" title="end"><tt class="computeroutput"><span class="identifier">end</span></tt></a><span class="special">(</span><span class="identifier">s</span><span class="special">))</span></tt> is always a valid range.
</li>
<li class="listitem">
An <a class="link" href="../../algorithm.html" title="Algorithm">Algorithm</a> that iterates through
the range <code class="computeroutput"><span class="special">[</span><a class="link" href="../intrinsic/functions/begin.html" title="begin"><code class="computeroutput"><span class="identifier">begin</span></code></a><span class="special">(</span><span class="identifier">s</span><span class="special">),</span> <a class="link" href="../intrinsic/functions/end.html" title="end"><code class="computeroutput"><span class="identifier">end</span></code></a><span class="special">(</span><span class="identifier">s</span><span class="special">))</span></code> will pass through every element of
<code class="computeroutput"><span class="identifier">s</span></code> exactly once.
<li>
An <a href="../../algorithm.html" title="Algorithm">Algorithm</a> that iterates through
the range <tt class="computeroutput"><span class="special">[</span><a href="../intrinsic/functions/begin.html" title="begin"><tt class="computeroutput"><span class="identifier">begin</span></tt></a><span class="special">(</span><span class="identifier">s</span><span class="special">),</span> <a href="../intrinsic/functions/end.html" title="end"><tt class="computeroutput"><span class="identifier">end</span></tt></a><span class="special">(</span><span class="identifier">s</span><span class="special">))</span></tt> will pass through every element of
<tt class="computeroutput"><span class="identifier">s</span></tt> exactly once.
</li>
<li class="listitem">
<code class="computeroutput"><a class="link" href="../intrinsic/functions/begin.html" title="begin"><code class="computeroutput"><span class="identifier">begin</span></code></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></code>
is identical to <code class="computeroutput"><a class="link" href="../intrinsic/functions/end.html" title="end"><code class="computeroutput"><span class="identifier">end</span></code></a><span class="special">(</span><span class="identifier">s</span><span class="special">))</span></code>
if and only if <code class="computeroutput"><span class="identifier">s</span></code> is empty.
<li>
<tt class="computeroutput"><a href="../intrinsic/functions/begin.html" title="begin"><tt class="computeroutput"><span class="identifier">begin</span></tt></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
is identical to <tt class="computeroutput"><a href="../intrinsic/functions/end.html" title="end"><tt class="computeroutput"><span class="identifier">end</span></tt></a><span class="special">(</span><span class="identifier">s</span><span class="special">))</span></tt>
if and only if <tt class="computeroutput"><span class="identifier">s</span></tt> is empty.
</li>
<li class="listitem">
Two different iterations through <code class="computeroutput"><span class="identifier">s</span></code>
<li>
Two different iterations through <tt class="computeroutput"><span class="identifier">s</span></tt>
will access its elements in the same order.
</li>
</ul></div>
<a name="fusion.sequence.concepts.forward_sequence.models"></a><h6>
<a name="id580912"></a>
<a class="link" href="forward_sequence.html#fusion.sequence.concepts.forward_sequence.models">Models</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem"><a class="link" href="../../adapted/std__pair.html" title="std::pair"><code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span></code></a></li>
<li class="listitem"><a class="link" href="../../adapted/boost__array.html" title="boost::array"><code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">array</span></code></a></li>
<li class="listitem"><a class="link" href="../../container/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a></li>
<li class="listitem"><a class="link" href="../../container/cons.html" title="cons"><code class="computeroutput"><span class="identifier">cons</span></code></a></li>
<li class="listitem"><a class="link" href="../../container/list.html" title="list"><code class="computeroutput"><span class="identifier">list</span></code></a></li>
<li class="listitem"><a class="link" href="../../container/set.html" title="set"><code class="computeroutput"><span class="identifier">set</span></code></a></li>
<li class="listitem"><a class="link" href="../../container/map.html" title="map"><code class="computeroutput"><span class="identifier">map</span></code></a></li>
<li class="listitem"><a class="link" href="../../view/single_view.html" title="single_view"><code class="computeroutput"><span class="identifier">single_view</span></code></a></li>
<li class="listitem"><a class="link" href="../../view/filter_view.html" title="filter_view"><code class="computeroutput"><span class="identifier">filter_view</span></code></a></li>
<li class="listitem"><a class="link" href="../../view/iterator_range.html" title="iterator_range"><code class="computeroutput"><span class="identifier">iterator_range</span></code></a></li>
<li class="listitem"><a class="link" href="../../view/joint_view.html" title="joint_view"><code class="computeroutput"><span class="identifier">joint_view</span></code></a></li>
<li class="listitem"><a class="link" href="../../view/transform_view.html" title="transform_view"><code class="computeroutput"><span class="identifier">transform_view</span></code></a></li>
<li class="listitem"><a class="link" href="../../view/reverse_view.html" title="reverse_view"><code class="computeroutput"><span class="identifier">reverse_view</span></code></a></li>
<li class="listitem"><a class="link" href="../../view/zip_view.html" title="zip_view"><code class="computeroutput"><span class="identifier">zip_view</span></code></a></li>
<a name="fusion.sequence.concepts.forward_sequence.models"></a><h5>
<a name="id444246"></a>
<a href="forward_sequence.html#fusion.sequence.concepts.forward_sequence.models">Models</a>
</h5>
<div class="itemizedlist"><ul type="disc">
<li><a href="../../adapted/std__pair.html" title="std::pair"><tt class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span></tt></a></li>
<li><a href="../../adapted/boost__array.html" title="boost::array"><tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">array</span></tt></a></li>
<li><a href="../../container/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a></li>
<li><a href="../../container/cons.html" title="cons"><tt class="computeroutput"><span class="identifier">cons</span></tt></a></li>
<li><a href="../../container/list.html" title="list"><tt class="computeroutput"><span class="identifier">list</span></tt></a></li>
<li><a href="../../container/set.html" title="set"><tt class="computeroutput"><span class="identifier">set</span></tt></a></li>
<li><a href="../../container/map.html" title="map"><tt class="computeroutput"><span class="identifier">map</span></tt></a></li>
<li><a href="../../view/single_view.html" title="single_view"><tt class="computeroutput"><span class="identifier">single_view</span></tt></a></li>
<li><a href="../../view/filter_view.html" title="filter_view"><tt class="computeroutput"><span class="identifier">filter_view</span></tt></a></li>
<li><a href="../../view/iterator_range.html" title="iterator_range"><tt class="computeroutput"><span class="identifier">iterator_range</span></tt></a></li>
<li><a href="../../view/joint_view.html" title="joint_view"><tt class="computeroutput"><span class="identifier">joint_view</span></tt></a></li>
<li><a href="../../view/transform_view.html" title="transform_view"><tt class="computeroutput"><span class="identifier">transform_view</span></tt></a></li>
<li><a href="../../view/reverse_view.html" title="reverse_view"><tt class="computeroutput"><span class="identifier">reverse_view</span></tt></a></li>
<li><a href="../../view/zip_view.html" title="zip_view"><tt class="computeroutput"><span class="identifier">zip_view</span></tt></a></li>
</ul></div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>

View File

@ -1,13 +1,16 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Random Access Sequence</title>
<title>Random
Access Sequence</title>
<link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.0">
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
<link rel="home" href="../../../index.html" title="Chapter<65>1.<2E>Fusion 2.0">
<link rel="up" href="../concepts.html" title="Concepts">
<link rel="prev" href="bidirectional_sequence.html" title="Bidirectional Sequence">
<link rel="next" href="associative_sequence.html" title="Associative Sequence">
<link rel="previous" href="bidirectional_sequence.html" title="Bidirectional
Sequence">
<link rel="next" href="associative_sequence.html" title="Associative
Sequence">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
@ -22,63 +25,71 @@
<div class="spirit-nav">
<a accesskey="p" href="bidirectional_sequence.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../concepts.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="associative_sequence.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Random Access Sequence">
<div class="titlepage"><div><div><h4 class="title">
<a name="fusion.sequence.concepts.random_access_sequence"></a><a class="link" href="random_access_sequence.html" title="Random Access Sequence">Random
<div class="section" lang="en">
<div class="titlepage">
<div><div><h4 class="title">
<a name="fusion.sequence.concepts.random_access_sequence"></a><a href="random_access_sequence.html" title="Random
Access Sequence">Random
Access Sequence</a>
</h4></div></div></div>
<a name="fusion.sequence.concepts.random_access_sequence.description"></a><h6>
<a name="id582044"></a>
<a class="link" href="random_access_sequence.html#fusion.sequence.concepts.random_access_sequence.description">Description</a>
</h6>
</h4></div></div>
<div></div>
</div>
<a name="fusion.sequence.concepts.random_access_sequence.description"></a><h5>
<a name="id445865"></a>
<a href="random_access_sequence.html#fusion.sequence.concepts.random_access_sequence.description">Description</a>
</h5>
<p>
A Random Access Sequence is a <a class="link" href="bidirectional_sequence.html" title="Bidirectional Sequence">Bidirectional
Sequence</a> whose iterators model <a class="link" href="../../iterator/concepts/random_access_iterator.html" title="Random Access Iterator">Random
A Random Access Sequence is a <a href="bidirectional_sequence.html" title="Bidirectional
Sequence">Bidirectional
Sequence</a> whose iterators model <a href="../../iterator/concepts/random_access_iterator.html" title="Random
Access Iterator">Random
Access Iterator</a>. It guarantees constant time access to arbitrary
sequence elements.
</p>
<a name="fusion.sequence.concepts.random_access_sequence.refinement_of"></a><h6>
<a name="id582076"></a>
<a class="link" href="random_access_sequence.html#fusion.sequence.concepts.random_access_sequence.refinement_of">Refinement
<a name="fusion.sequence.concepts.random_access_sequence.refinement_of"></a><h5>
<a name="id445915"></a>
<a href="random_access_sequence.html#fusion.sequence.concepts.random_access_sequence.refinement_of">Refinement
of</a>
</h6>
</h5>
<p>
<a class="link" href="bidirectional_sequence.html" title="Bidirectional Sequence">Bidirectional
<a href="bidirectional_sequence.html" title="Bidirectional
Sequence">Bidirectional
Sequence</a>
</p>
<div class="variablelist" title="Notation">
<div class="variablelist">
<p class="title"><b>Notation</b></p>
<dl>
<dt><span class="term"><code class="computeroutput"><span class="identifier">s</span></code></span></dt>
<dt><span class="term"><tt class="computeroutput"><span class="identifier">s</span></tt></span></dt>
<dd><p>
A Random Access Sequence
</p></dd>
<dt><span class="term"><code class="computeroutput"><span class="identifier">S</span></code></span></dt>
<dt><span class="term"><tt class="computeroutput"><span class="identifier">S</span></tt></span></dt>
<dd><p>
A Random Access Sequence type
</p></dd>
<dt><span class="term"><code class="computeroutput"><span class="identifier">N</span></code></span></dt>
<dt><span class="term"><tt class="computeroutput"><span class="identifier">N</span></tt></span></dt>
<dd><p>
An <a href="http://www.boost.org/libs/mpl/doc/refmanual/integral-constant.html" target="_top">MPL
Integral Constant</a>
</p></dd>
<dt><span class="term"><code class="computeroutput"><span class="identifier">o</span></code></span></dt>
<dt><span class="term"><tt class="computeroutput"><span class="identifier">o</span></tt></span></dt>
<dd><p>
An arbitrary object
</p></dd>
<dt><span class="term"><code class="computeroutput"><span class="identifier">e</span></code></span></dt>
<dt><span class="term"><tt class="computeroutput"><span class="identifier">e</span></tt></span></dt>
<dd><p>
A Sequence element
</p></dd>
</dl>
</div>
<a name="fusion.sequence.concepts.random_access_sequence.valid_expressions"></a><h6>
<a name="id582203"></a>
<a class="link" href="random_access_sequence.html#fusion.sequence.concepts.random_access_sequence.valid_expressions">Valid
<a name="fusion.sequence.concepts.random_access_sequence.valid_expressions"></a><h5>
<a name="id446083"></a>
<a href="random_access_sequence.html#fusion.sequence.concepts.random_access_sequence.valid_expressions">Valid
Expressions</a>
</h6>
</h5>
<p>
In addition to the requirements defined in <a class="link" href="bidirectional_sequence.html" title="Bidirectional Sequence">Bidirectional
In addition to the requirements defined in <a href="bidirectional_sequence.html" title="Bidirectional
Sequence">Bidirectional
Sequence</a>, for any Random Access Sequence the following must be met:
</p>
<div class="informaltable"><table class="table">
@ -89,215 +100,155 @@
<col>
</colgroup>
<thead><tr>
<th>
<p>
<th><p>
Expression
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Return type
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Type Requirements
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Runtime Complexity
</p>
</th>
</p></th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<code class="computeroutput"><a class="link" href="../intrinsic/functions/begin.html" title="begin"><code class="computeroutput"><span class="identifier">begin</span></code></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../../iterator/concepts/random_access_iterator.html" title="Random Access Iterator">Random
<td><p>
<tt class="computeroutput"><a href="../intrinsic/functions/begin.html" title="begin"><tt class="computeroutput"><span class="identifier">begin</span></tt></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
</p></td>
<td><p>
<a href="../../iterator/concepts/random_access_iterator.html" title="Random
Access Iterator">Random
Access Iterator</a>
</p>
</td>
<td>
<p>
</p>
</td>
<td>
<p>
</p></td>
<td><p>
</p></td>
<td><p>
Constant
</p>
</td>
</p></td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><a class="link" href="../intrinsic/functions/end.html" title="end"><code class="computeroutput"><span class="identifier">end</span></code></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></code>
</p>
</td>
<td>
<p>
<a class="link" href="../../iterator/concepts/random_access_iterator.html" title="Random Access Iterator">Random
<td><p>
<tt class="computeroutput"><a href="../intrinsic/functions/end.html" title="end"><tt class="computeroutput"><span class="identifier">end</span></tt></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
</p></td>
<td><p>
<a href="../../iterator/concepts/random_access_iterator.html" title="Random
Access Iterator">Random
Access Iterator</a>
</p>
</td>
<td>
<p>
</p>
</td>
<td>
<p>
</p></td>
<td><p>
</p></td>
<td><p>
Constant
</p>
</td>
</p></td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><a class="link" href="../intrinsic/functions/at.html" title="at"><code class="computeroutput"><span class="identifier">at</span></code></a><span class="special">&lt;</span><span class="identifier">N</span><span class="special">&gt;(</span><span class="identifier">s</span><span class="special">)</span></code>
</p>
</td>
<td>
<p>
<td><p>
<tt class="computeroutput"><a href="../intrinsic/functions/at.html" title="at"><tt class="computeroutput"><span class="identifier">at</span></tt></a><span class="special">&lt;</span><span class="identifier">N</span><span class="special">&gt;(</span><span class="identifier">s</span><span class="special">)</span></tt>
</p></td>
<td><p>
Any type
</p>
</td>
<td>
<p>
</p>
</td>
<td>
<p>
</p></td>
<td><p>
</p></td>
<td><p>
Constant
</p>
</td>
</p></td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><a class="link" href="../intrinsic/functions/at.html" title="at"><code class="computeroutput"><span class="identifier">at</span></code></a><span class="special">&lt;</span><span class="identifier">N</span><span class="special">&gt;(</span><span class="identifier">s</span><span class="special">)</span>
<span class="special">=</span> <span class="identifier">o</span></code>
</p>
</td>
<td>
<p>
<td><p>
<tt class="computeroutput"><a href="../intrinsic/functions/at.html" title="at"><tt class="computeroutput"><span class="identifier">at</span></tt></a><span class="special">&lt;</span><span class="identifier">N</span><span class="special">&gt;(</span><span class="identifier">s</span><span class="special">)</span>
<span class="special">=</span> <span class="identifier">o</span></tt>
</p></td>
<td><p>
Any type
</p>
</td>
<td>
<p>
<code class="computeroutput"><span class="identifier">s</span></code> is mutable and
<code class="computeroutput"><span class="identifier">e</span> <span class="special">=</span>
<span class="identifier">o</span></code>, where <code class="computeroutput"><span class="identifier">e</span></code> is the first element in the
</p></td>
<td><p>
<tt class="computeroutput"><span class="identifier">s</span></tt> is mutable and
<tt class="computeroutput"><span class="identifier">e</span> <span class="special">=</span>
<span class="identifier">o</span></tt>, where <tt class="computeroutput"><span class="identifier">e</span></tt> is the first element in the
sequence, is a valid expression.
</p>
</td>
<td>
<p>
</p></td>
<td><p>
Constant
</p>
</td>
</p></td>
</tr>
</tbody>
</table></div>
<a name="fusion.sequence.concepts.random_access_sequence.result_type_expressions"></a><h6>
<a name="id583634"></a>
<a class="link" href="random_access_sequence.html#fusion.sequence.concepts.random_access_sequence.result_type_expressions">Result
<a name="fusion.sequence.concepts.random_access_sequence.result_type_expressions"></a><h5>
<a name="id446539"></a>
<a href="random_access_sequence.html#fusion.sequence.concepts.random_access_sequence.result_type_expressions">Result
Type Expressions</a>
</h6>
</h5>
<div class="informaltable"><table class="table">
<colgroup>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
<th><p>
Expression
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Compile Time Complexity
</p>
</th>
</p></th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<code class="computeroutput"><a class="link" href="../intrinsic/metafunctions/begin.html" title="begin"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">begin</span></code></a><span class="special">&lt;</span><span class="identifier">S</span><span class="special">&gt;::</span><span class="identifier">type</span></code>
</p>
</td>
<td>
<p>
<td><p>
<tt class="computeroutput"><a href="../intrinsic/metafunctions/begin.html" title="begin"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">begin</span></tt></a><span class="special">&lt;</span><span class="identifier">S</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
</p></td>
<td><p>
Amortized constant time
</p>
</td>
</p></td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><a class="link" href="../intrinsic/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">&lt;</span><span class="identifier">S</span><span class="special">&gt;::</span><span class="identifier">type</span></code>
</p>
</td>
<td>
<p>
<td><p>
<tt class="computeroutput"><a href="../intrinsic/metafunctions/end.html" title="end"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">end</span></tt></a><span class="special">&lt;</span><span class="identifier">S</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
</p></td>
<td><p>
Amortized constant time
</p>
</td>
</p></td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><a class="link" href="../intrinsic/metafunctions/at.html" title="at"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at</span></code></a><span class="special">&lt;</span><span class="identifier">S</span><span class="special">,</span>
<span class="identifier">N</span><span class="special">&gt;::</span><span class="identifier">type</span></code>
</p>
</td>
<td>
<p>
<td><p>
<tt class="computeroutput"><a href="../intrinsic/metafunctions/at.html" title="at"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at</span></tt></a><span class="special">&lt;</span><span class="identifier">S</span><span class="special">,</span>
<span class="identifier">N</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
</p></td>
<td><p>
Amortized constant time
</p>
</td>
</p></td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><a class="link" href="../intrinsic/metafunctions/value_at.html" title="value_at"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">value_at</span></code></a><span class="special">&lt;</span><span class="identifier">S</span><span class="special">,</span>
<span class="identifier">N</span><span class="special">&gt;::</span><span class="identifier">type</span></code>
</p>
</td>
<td>
<p>
<td><p>
<tt class="computeroutput"><a href="../intrinsic/metafunctions/value_at.html" title="value_at"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">value_at</span></tt></a><span class="special">&lt;</span><span class="identifier">S</span><span class="special">,</span>
<span class="identifier">N</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>
</p></td>
<td><p>
Amortized constant time
</p>
</td>
</p></td>
</tr>
</tbody>
</table></div>
<div class="sidebar">
<p class="title"><b></b></p>
<p>
<span class="inlinemediaobject"><img src="../../../images/note.png" alt="note"></span> <code class="computeroutput"><a class="link" href="../intrinsic/metafunctions/at.html" title="at"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at</span></code></a><span class="special">&lt;</span><span class="identifier">S</span><span class="special">,</span> <span class="identifier">N</span><span class="special">&gt;</span></code> returns the actual type returned by
<code class="computeroutput"><a class="link" href="../intrinsic/functions/at.html" title="at"><code class="computeroutput"><span class="identifier">at</span></code></a><span class="special">&lt;</span><span class="identifier">N</span><span class="special">&gt;(</span><span class="identifier">s</span><span class="special">)</span></code>. In
<div class="sidebar"><p>
<span class="inlinemediaobject"><img src="images/note.png" alt="note"></span> <tt class="computeroutput"><a href="../intrinsic/metafunctions/at.html" title="at"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at</span></tt></a><span class="special">&lt;</span><span class="identifier">S</span><span class="special">,</span> <span class="identifier">N</span><span class="special">&gt;</span></tt> returns the actual type returned by
<tt class="computeroutput"><a href="../intrinsic/functions/at.html" title="at"><tt class="computeroutput"><span class="identifier">at</span></tt></a><span class="special">&lt;</span><span class="identifier">N</span><span class="special">&gt;(</span><span class="identifier">s</span><span class="special">)</span></tt>. In
most cases, this is a reference. Hence, there is no way to know the exact
element type using <code class="computeroutput"><a class="link" href="../intrinsic/metafunctions/at.html" title="at"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at</span></code></a><span class="special">&lt;</span><span class="identifier">S</span><span class="special">,</span> <span class="identifier">N</span><span class="special">&gt;</span></code>.The element at <code class="computeroutput"><span class="identifier">N</span></code>
element type using <tt class="computeroutput"><a href="../intrinsic/metafunctions/at.html" title="at"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at</span></tt></a><span class="special">&lt;</span><span class="identifier">S</span><span class="special">,</span> <span class="identifier">N</span><span class="special">&gt;</span></tt>.The element at <tt class="computeroutput"><span class="identifier">N</span></tt>
may actually be a reference to begin with. For this purpose, you can use
<code class="computeroutput"><a class="link" href="../intrinsic/metafunctions/value_at.html" title="value_at"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">value_at</span></code></a><span class="special">&lt;</span><span class="identifier">S</span><span class="special">,</span> <span class="identifier">N</span><span class="special">&gt;</span></code>.
</p>
</div>
<a name="fusion.sequence.concepts.random_access_sequence.expression_semantics"></a><h6>
<a name="id584080"></a>
<a class="link" href="random_access_sequence.html#fusion.sequence.concepts.random_access_sequence.expression_semantics">Expression
<tt class="computeroutput"><a href="../intrinsic/metafunctions/value_at.html" title="value_at"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">value_at</span></tt></a><span class="special">&lt;</span><span class="identifier">S</span><span class="special">,</span> <span class="identifier">N</span><span class="special">&gt;</span></tt>.
</p></div>
<a name="fusion.sequence.concepts.random_access_sequence.expression_semantics"></a><h5>
<a name="id447167"></a>
<a href="random_access_sequence.html#fusion.sequence.concepts.random_access_sequence.expression_semantics">Expression
Semantics</a>
</h6>
</h5>
<p>
The semantics of an expression are defined only where they differ from,
or are not defined in <a class="link" href="bidirectional_sequence.html" title="Bidirectional Sequence">Bidirectional
or are not defined in <a href="bidirectional_sequence.html" title="Bidirectional
Sequence">Bidirectional
Sequence</a>.
</p>
<div class="informaltable"><table class="table">
@ -306,49 +257,41 @@
<col>
</colgroup>
<thead><tr>
<th>
<p>
<th><p>
Expression
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Semantics
</p>
</th>
</p></th>
</tr></thead>
<tbody><tr>
<td>
<p>
<code class="computeroutput"><a class="link" href="../intrinsic/functions/at.html" title="at"><code class="computeroutput"><span class="identifier">at</span></code></a><span class="special">&lt;</span><span class="identifier">N</span><span class="special">&gt;(</span><span class="identifier">s</span><span class="special">)</span></code>
</p>
</td>
<td>
<p>
The Nth element from the beginning of the sequence; see <a class="link" href="../intrinsic/functions/at.html" title="at"><code class="computeroutput"><span class="identifier">at</span></code></a>.
</p>
</td>
<td><p>
<tt class="computeroutput"><a href="../intrinsic/functions/at.html" title="at"><tt class="computeroutput"><span class="identifier">at</span></tt></a><span class="special">&lt;</span><span class="identifier">N</span><span class="special">&gt;(</span><span class="identifier">s</span><span class="special">)</span></tt>
</p></td>
<td><p>
The Nth element from the beginning of the sequence; see <a href="../intrinsic/functions/at.html" title="at"><tt class="computeroutput"><span class="identifier">at</span></tt></a>.
</p></td>
</tr></tbody>
</table></div>
<a name="fusion.sequence.concepts.random_access_sequence.models"></a><h6>
<a name="id584192"></a>
<a class="link" href="random_access_sequence.html#fusion.sequence.concepts.random_access_sequence.models">Models</a>
</h6>
<div class="itemizedlist"><ul class="itemizedlist" type="disc">
<li class="listitem"><a class="link" href="../../adapted/std__pair.html" title="std::pair"><code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span></code></a></li>
<li class="listitem"><a class="link" href="../../adapted/boost__array.html" title="boost::array"><code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">array</span></code></a></li>
<li class="listitem"><a class="link" href="../../container/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a></li>
<li class="listitem"><a class="link" href="../../view/reverse_view.html" title="reverse_view"><code class="computeroutput"><span class="identifier">reverse_view</span></code></a></li>
<li class="listitem">
<a class="link" href="../../view/iterator_range.html" title="iterator_range"><code class="computeroutput"><span class="identifier">iterator_range</span></code></a>
<a name="fusion.sequence.concepts.random_access_sequence.models"></a><h5>
<a name="id447327"></a>
<a href="random_access_sequence.html#fusion.sequence.concepts.random_access_sequence.models">Models</a>
</h5>
<div class="itemizedlist"><ul type="disc">
<li><a href="../../adapted/std__pair.html" title="std::pair"><tt class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span></tt></a></li>
<li><a href="../../adapted/boost__array.html" title="boost::array"><tt class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">array</span></tt></a></li>
<li><a href="../../container/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a></li>
<li><a href="../../view/reverse_view.html" title="reverse_view"><tt class="computeroutput"><span class="identifier">reverse_view</span></tt></a></li>
<li>
<a href="../../view/iterator_range.html" title="iterator_range"><tt class="computeroutput"><span class="identifier">iterator_range</span></tt></a>
(where adapted sequence is a Random Access Sequence)
</li>
<li class="listitem">
<a class="link" href="../../view/transform_view.html" title="transform_view"><code class="computeroutput"><span class="identifier">transform_view</span></code></a>
<li>
<a href="../../view/transform_view.html" title="transform_view"><tt class="computeroutput"><span class="identifier">transform_view</span></tt></a>
(where adapted sequence is a Random Access Sequence)
</li>
<li class="listitem">
<a class="link" href="../../view/zip_view.html" title="zip_view"><code class="computeroutput"><span class="identifier">zip_view</span></code></a>
<li>
<a href="../../view/zip_view.html" title="zip_view"><tt class="computeroutput"><span class="identifier">zip_view</span></tt></a>
(where adapted sequences are models Random Access Sequence)
</li>
</ul></div>

View File

@ -3,10 +3,11 @@
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Intrinsic</title>
<link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.0">
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
<link rel="home" href="../../index.html" title="Chapter<65>1.<2E>Fusion 2.0">
<link rel="up" href="../sequence.html" title="Sequence">
<link rel="prev" href="concepts/associative_sequence.html" title="Associative Sequence">
<link rel="previous" href="concepts/associative_sequence.html" title="Associative
Sequence">
<link rel="next" href="intrinsic/functions.html" title="Functions">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@ -22,34 +23,37 @@
<div class="spirit-nav">
<a accesskey="p" href="concepts/associative_sequence.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../sequence.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="intrinsic/functions.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Intrinsic">
<div class="titlepage"><div><div><h3 class="title">
<a name="fusion.sequence.intrinsic"></a><a class="link" href="intrinsic.html" title="Intrinsic">Intrinsic</a>
</h3></div></div></div>
<div class="section" lang="en">
<div class="titlepage">
<div><div><h3 class="title">
<a name="fusion.sequence.intrinsic"></a><a href="intrinsic.html" title="Intrinsic">Intrinsic</a>
</h3></div></div>
<div></div>
</div>
<div class="toc"><dl>
<dt><span class="section"><a href="intrinsic/functions.html">Functions</a></span></dt>
<dt><span class="section"><a href="intrinsic/metafunctions.html">Metafunctions</a></span></dt>
</dl></div>
<p>
Intrinsic form the essential interface of every Fusion <a class="link" href="../sequence.html" title="Sequence">Sequence</a>.
Intrinsic form the essential interface of every Fusion <a href="../sequence.html" title="Sequence">Sequence</a>.
<a href="http://en.wikipedia.org/wiki/Standard_Template_Library" target="_top">STL</a>
counterparts of these functions are usually implemented as member functions.
Intrinsic functions, unlike <a class="link" href="../algorithm.html" title="Algorithm">Algorithms</a>,
are not generic across the full <a class="link" href="../sequence.html" title="Sequence">Sequence</a>
repertoire. They need to be implemented for each Fusion <a class="link" href="../sequence.html" title="Sequence">Sequence</a>
<sup>[<a name="id585454" href="#ftn.id585454" class="footnote">5</a>]</sup>
Intrinsic functions, unlike <a href="../algorithm.html" title="Algorithm">Algorithms</a>,
are not generic across the full <a href="../sequence.html" title="Sequence">Sequence</a>
repertoire. They need to be implemented for each Fusion <a href="../sequence.html" title="Sequence">Sequence</a>
<sup>[<a name="id449132" href="#ftn.id449132">5</a>]</sup>
.
</p>
<a name="fusion.sequence.intrinsic.header"></a><h5>
<a name="id585466"></a>
<a class="link" href="intrinsic.html#fusion.sequence.intrinsic.header">Header</a>
</h5>
<a name="fusion.sequence.intrinsic.header"></a><h4>
<a name="id449150"></a>
<a href="intrinsic.html#fusion.sequence.intrinsic.header">Header</a>
</h4>
<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">sequence</span><span class="special">/</span><span class="identifier">intrinsic</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">intrinsic</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
</pre>
<div class="footnotes">
<br><hr width="100" align="left">
<div class="footnote"><p><sup>[<a name="ftn.id585454" href="#id585454" class="para">5</a>] </sup>
<div class="footnote"><p><sup>[<a name="ftn.id449132" href="#id449132">5</a>] </sup>
In practice, many of intrinsic functions have default implementations
that will work in majority of cases
</p></div>

View File

@ -3,10 +3,10 @@
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Functions</title>
<link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.0">
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
<link rel="home" href="../../../index.html" title="Chapter<65>1.<2E>Fusion 2.0">
<link rel="up" href="../intrinsic.html" title="Intrinsic">
<link rel="prev" href="../intrinsic.html" title="Intrinsic">
<link rel="previous" href="../intrinsic.html" title="Intrinsic">
<link rel="next" href="functions/begin.html" title="begin">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@ -22,10 +22,13 @@
<div class="spirit-nav">
<a accesskey="p" href="../intrinsic.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../intrinsic.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="functions/begin.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Functions">
<div class="titlepage"><div><div><h4 class="title">
<a name="fusion.sequence.intrinsic.functions"></a><a class="link" href="functions.html" title="Functions">Functions</a>
</h4></div></div></div>
<div class="section" lang="en">
<div class="titlepage">
<div><div><h4 class="title">
<a name="fusion.sequence.intrinsic.functions"></a><a href="functions.html" title="Functions">Functions</a>
</h4></div></div>
<div></div>
</div>
<div class="toc"><dl>
<dt><span class="section"><a href="functions/begin.html">begin</a></span></dt>
<dt><span class="section"><a href="functions/end.html">end</a></span></dt>

View File

@ -3,10 +3,10 @@
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>at</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.0">
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
<link rel="home" href="../../../../index.html" title="Chapter<65>1.<2E>Fusion 2.0">
<link rel="up" href="../functions.html" title="Functions">
<link rel="prev" href="size.html" title="size">
<link rel="previous" href="size.html" title="size">
<link rel="next" href="at_c.html" title="at_c">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@ -22,32 +22,35 @@
<div class="spirit-nav">
<a accesskey="p" href="size.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="at_c.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="at">
<div class="titlepage"><div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.functions.at"></a><a class="link" href="at.html" title="at">at</a>
</h5></div></div></div>
<div class="section" lang="en">
<div class="titlepage">
<div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.functions.at"></a><a href="at.html" title="at">at</a>
</h5></div></div>
<div></div>
</div>
<a name="fusion.sequence.intrinsic.functions.at.description"></a><h6>
<a name="id590667"></a>
<a class="link" href="at.html#fusion.sequence.intrinsic.functions.at.description">Description</a>
<a name="id454767"></a>
<a href="at.html#fusion.sequence.intrinsic.functions.at.description">Description</a>
</h6>
<p>
Returns the N-th element from the beginning of the sequence.
</p>
<a name="fusion.sequence.intrinsic.functions.at.synopsis"></a><h6>
<a name="id590684"></a>
<a class="link" href="at.html#fusion.sequence.intrinsic.functions.at.synopsis">Synopsis</a>
<a name="id454796"></a>
<a href="at.html#fusion.sequence.intrinsic.functions.at.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">N</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
<span class="keyword">typename</span> <a class="link" href="../metafunctions/at.html" title="at"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at</span></code></a><span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">N</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="keyword">typename</span> <a href="../metafunctions/at.html" title="at"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at</span></tt></a><span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">N</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">at</span><span class="special">(</span><span class="identifier">Sequence</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">N</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
<span class="keyword">typename</span> <a class="link" href="../metafunctions/at.html" title="at"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at</span></code></a><span class="special">&lt;</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">N</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="keyword">typename</span> <a href="../metafunctions/at.html" title="at"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at</span></tt></a><span class="special">&lt;</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">N</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">at</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
</pre>
<a name="fusion.sequence.intrinsic.functions.at.parameters"></a><h6>
<a name="id590917"></a>
<a class="link" href="at.html#fusion.sequence.intrinsic.functions.at.parameters">Parameters</a>
<a name="id455124"></a>
<a href="at.html#fusion.sequence.intrinsic.functions.at.parameters">Parameters</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@ -56,99 +59,82 @@
<col>
</colgroup>
<thead><tr>
<th>
<p>
<th><p>
Parameter
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Requirement
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Description
</p>
</th>
</p></th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">seq</span></code>
</p>
</td>
<td>
<p>
Model of <a class="link" href="../../concepts/random_access_sequence.html" title="Random Access Sequence">Random
<td><p>
<tt class="computeroutput"><span class="identifier">seq</span></tt>
</p></td>
<td><p>
Model of <a href="../../concepts/random_access_sequence.html" title="Random
Access Sequence">Random
Access Sequence</a>
</p>
</td>
<td>
<p>
</p></td>
<td><p>
The sequence we wish to investigate.
</p>
</td>
</p></td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">N</span></code>
</p>
</td>
<td>
<p>
<td><p>
<tt class="computeroutput"><span class="identifier">N</span></tt>
</p></td>
<td><p>
An <a href="http://www.boost.org/libs/mpl/doc/refmanual/integral-constant.html" target="_top">MPL
Integral Constant</a>
</p>
</td>
<td>
<p>
</p></td>
<td><p>
An index from the beginning of the sequence.
</p>
</td>
</p></td>
</tr>
</tbody>
</table></div>
<a name="fusion.sequence.intrinsic.functions.at.expression_semantics"></a><h6>
<a name="id591042"></a>
<a class="link" href="at.html#fusion.sequence.intrinsic.functions.at.expression_semantics">Expression
<a name="id455282"></a>
<a href="at.html#fusion.sequence.intrinsic.functions.at.expression_semantics">Expression
Semantics</a>
</h6>
<pre class="programlisting"><span class="identifier">at</span><span class="special">&lt;</span><span class="identifier">N</span><span class="special">&gt;(</span><span class="identifier">seq</span><span class="special">);</span>
</pre>
<p>
<span class="bold"><strong>Return type</strong></span>: Returns a reference to
the N-th element from the beginning of the sequence <code class="computeroutput"><span class="identifier">seq</span></code>
if <code class="computeroutput"><span class="identifier">seq</span></code> is mutable and
<code class="computeroutput"><span class="identifier">e</span> <span class="special">=</span>
<span class="identifier">o</span></code>, where <code class="computeroutput"><span class="identifier">e</span></code>
<span class="bold"><b>Return type</b></span>: Returns a reference to
the N-th element from the beginning of the sequence <tt class="computeroutput"><span class="identifier">seq</span></tt>
if <tt class="computeroutput"><span class="identifier">seq</span></tt> is mutable and
<tt class="computeroutput"><span class="identifier">e</span> <span class="special">=</span>
<span class="identifier">o</span></tt>, where <tt class="computeroutput"><span class="identifier">e</span></tt>
is the N-th element from the beginning of the sequence, is a valid expression.
Else, returns a type convertable to the N-th element from the beginning
of the sequence.
</p>
<p>
<span class="bold"><strong>Precondition</strong></span>: <code class="computeroutput"><span class="number">0</span>
<span class="special">&lt;=</span> <span class="identifier">N</span><span class="special">::</span><span class="identifier">value</span> <span class="special">&lt;</span> <a class="link" href="size.html" title="size"><code class="computeroutput"><span class="identifier">size</span></code></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></code>
<span class="bold"><b>Precondition</b></span>: <tt class="computeroutput"><span class="number">0</span>
<span class="special">&lt;=</span> <span class="identifier">N</span><span class="special">::</span><span class="identifier">value</span> <span class="special">&lt;</span> <a href="size.html" title="size"><tt class="computeroutput"><span class="identifier">size</span></tt></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
</p>
<p>
<span class="bold"><strong>Semantics</strong></span>: Equivalent to
<span class="bold"><b>Semantics</b></span>: Equivalent to
</p>
<pre class="programlisting"><a class="link" href="../../../iterator/functions/deref.html" title="deref"><code class="computeroutput"><span class="identifier">deref</span></code></a><span class="special">(</span><a class="link" href="../../../iterator/functions/advance.html" title="advance"><code class="computeroutput"><span class="identifier">advance</span></code></a><span class="special">&lt;</span><span class="identifier">N</span><span class="special">&gt;(</span><a class="link" href="begin.html" title="begin"><code class="computeroutput"><span class="identifier">begin</span></code></a><span class="special">(</span><span class="identifier">s</span><span class="special">)))</span>
<pre class="programlisting"><a href="../../../iterator/functions/deref.html" title="deref"><tt class="computeroutput"><span class="identifier">deref</span></tt></a><span class="special">(</span><a href="../../../iterator/functions/advance.html" title="advance"><tt class="computeroutput"><span class="identifier">advance</span></tt></a><span class="special">&lt;</span><span class="identifier">N</span><span class="special">&gt;(</span><a href="begin.html" title="begin"><tt class="computeroutput"><span class="identifier">begin</span></tt></a><span class="special">(</span><span class="identifier">s</span><span class="special">)))</span>
</pre>
<a name="fusion.sequence.intrinsic.functions.at.header"></a><h6>
<a name="id591252"></a>
<a class="link" href="at.html#fusion.sequence.intrinsic.functions.at.header">Header</a>
<a name="id455597"></a>
<a href="at.html#fusion.sequence.intrinsic.functions.at.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">intrinsic</span><span class="special">/</span><span class="identifier">at</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">at</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
</pre>
<a name="fusion.sequence.intrinsic.functions.at.example"></a><h6>
<a name="id591367"></a>
<a class="link" href="at.html#fusion.sequence.intrinsic.functions.at.example">Example</a>
<a name="id455760"></a>
<a href="at.html#fusion.sequence.intrinsic.functions.at.example">Example</a>
</h6>
<pre class="programlisting"><a class="link" href="../../../container/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">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>
<pre class="programlisting"><a href="../../../container/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">v</span><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="number">2</span><span class="special">,</span> <span class="number">3</span><span class="special">);</span>
<span class="identifier">assert</span><span class="special">(</span><span class="identifier">at</span><span class="special">&lt;</span><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">int_</span><span class="special">&lt;</span><span class="number">1</span><span class="special">&gt;</span> <span class="special">&gt;(</span><span class="identifier">v</span><span class="special">)</span> <span class="special">==</span> <span class="number">2</span><span class="special">);</span>
</pre>
</div>

View File

@ -3,10 +3,10 @@
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>at_c</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.0">
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
<link rel="home" href="../../../../index.html" title="Chapter<65>1.<2E>Fusion 2.0">
<link rel="up" href="../functions.html" title="Functions">
<link rel="prev" href="at.html" title="at">
<link rel="previous" href="at.html" title="at">
<link rel="next" href="has_key.html" title="has_key">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@ -22,32 +22,35 @@
<div class="spirit-nav">
<a accesskey="p" href="at.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="has_key.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="at_c">
<div class="titlepage"><div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.functions.at_c"></a><a class="link" href="at_c.html" title="at_c">at_c</a>
</h5></div></div></div>
<div class="section" lang="en">
<div class="titlepage">
<div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.functions.at_c"></a><a href="at_c.html" title="at_c">at_c</a>
</h5></div></div>
<div></div>
</div>
<a name="fusion.sequence.intrinsic.functions.at_c.description"></a><h6>
<a name="id592619"></a>
<a class="link" href="at_c.html#fusion.sequence.intrinsic.functions.at_c.description">Description</a>
<a name="id455987"></a>
<a href="at_c.html#fusion.sequence.intrinsic.functions.at_c.description">Description</a>
</h6>
<p>
Returns the N-th element from the beginning of the sequence.
</p>
<a name="fusion.sequence.intrinsic.functions.at_c.synopsis"></a><h6>
<a name="id592636"></a>
<a class="link" href="at_c.html#fusion.sequence.intrinsic.functions.at_c.synopsis">Synopsis</a>
<a name="id456017"></a>
<a href="at_c.html#fusion.sequence.intrinsic.functions.at_c.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">int</span> <span class="identifier">N</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
<span class="keyword">typename</span> <a class="link" href="../metafunctions/at_c.html" title="at_c"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at_c</span></code></a><span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">N</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="keyword">typename</span> <a href="../metafunctions/at_c.html" title="at_c"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at_c</span></tt></a><span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">N</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">at_c</span><span class="special">(</span><span class="identifier">Sequence</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">int</span> <span class="identifier">N</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
<span class="keyword">typename</span> <a class="link" href="../metafunctions/at_c.html" title="at_c"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at_c</span></code></a><span class="special">&lt;</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">N</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="keyword">typename</span> <a href="../metafunctions/at_c.html" title="at_c"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at_c</span></tt></a><span class="special">&lt;</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">N</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">at_c</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
</pre>
<a name="fusion.sequence.intrinsic.functions.at_c.parameters"></a><h6>
<a name="id592869"></a>
<a class="link" href="at_c.html#fusion.sequence.intrinsic.functions.at_c.parameters">Parameters</a>
<a name="id456348"></a>
<a href="at_c.html#fusion.sequence.intrinsic.functions.at_c.parameters">Parameters</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@ -56,99 +59,82 @@
<col>
</colgroup>
<thead><tr>
<th>
<p>
<th><p>
Parameter
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Requirement
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Description
</p>
</th>
</p></th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">seq</span></code>
</p>
</td>
<td>
<p>
Model of <a class="link" href="../../concepts/random_access_sequence.html" title="Random Access Sequence">Random
<td><p>
<tt class="computeroutput"><span class="identifier">seq</span></tt>
</p></td>
<td><p>
Model of <a href="../../concepts/random_access_sequence.html" title="Random
Access Sequence">Random
Access Sequence</a>
</p>
</td>
<td>
<p>
</p></td>
<td><p>
The sequence we wish to investigate.
</p>
</td>
</p></td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">N</span></code>
</p>
</td>
<td>
<p>
<td><p>
<tt class="computeroutput"><span class="identifier">N</span></tt>
</p></td>
<td><p>
An integral constant
</p>
</td>
<td>
<p>
</p></td>
<td><p>
An index from the beginning of the sequence.
</p>
</td>
</p></td>
</tr>
</tbody>
</table></div>
<a name="fusion.sequence.intrinsic.functions.at_c.expression_semantics"></a><h6>
<a name="id592990"></a>
<a class="link" href="at_c.html#fusion.sequence.intrinsic.functions.at_c.expression_semantics">Expression
<a name="id456499"></a>
<a href="at_c.html#fusion.sequence.intrinsic.functions.at_c.expression_semantics">Expression
Semantics</a>
</h6>
<pre class="programlisting"><span class="identifier">at_c</span><span class="special">&lt;</span><span class="identifier">N</span><span class="special">&gt;(</span><span class="identifier">seq</span><span class="special">);</span>
</pre>
<p>
<span class="bold"><strong>Return type</strong></span>: Returns a reference to
the N-th element from the beginning of the sequence <code class="computeroutput"><span class="identifier">seq</span></code>
if <code class="computeroutput"><span class="identifier">seq</span></code> is mutable and
<code class="computeroutput"><span class="identifier">e</span> <span class="special">=</span>
<span class="identifier">o</span></code>, where <code class="computeroutput"><span class="identifier">e</span></code>
<span class="bold"><b>Return type</b></span>: Returns a reference to
the N-th element from the beginning of the sequence <tt class="computeroutput"><span class="identifier">seq</span></tt>
if <tt class="computeroutput"><span class="identifier">seq</span></tt> is mutable and
<tt class="computeroutput"><span class="identifier">e</span> <span class="special">=</span>
<span class="identifier">o</span></tt>, where <tt class="computeroutput"><span class="identifier">e</span></tt>
is the N-th element from the beginning of the sequence, is a valid expression.
Else, returns a type convertable to the N-th element from the beginning
of the sequence.
</p>
<p>
<span class="bold"><strong>Precondition</strong></span>: <code class="computeroutput"><span class="number">0</span>
<span class="bold"><b>Precondition</b></span>: <tt class="computeroutput"><span class="number">0</span>
<span class="special">&lt;=</span> <span class="identifier">N</span>
<span class="special">&lt;</span> <a class="link" href="size.html" title="size"><code class="computeroutput"><span class="identifier">size</span></code></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></code>
<span class="special">&lt;</span> <a href="size.html" title="size"><tt class="computeroutput"><span class="identifier">size</span></tt></a><span class="special">(</span><span class="identifier">s</span><span class="special">)</span></tt>
</p>
<p>
<span class="bold"><strong>Semantics</strong></span>: Equivalent to
<span class="bold"><b>Semantics</b></span>: Equivalent to
</p>
<pre class="programlisting"><a class="link" href="../../../iterator/functions/deref.html" title="deref"><code class="computeroutput"><span class="identifier">deref</span></code></a><span class="special">(</span><a class="link" href="../../../iterator/functions/advance.html" title="advance"><code class="computeroutput"><span class="identifier">advance</span></code></a><span class="special">&lt;</span><span class="identifier">N</span><span class="special">&gt;(</span><a class="link" href="begin.html" title="begin"><code class="computeroutput"><span class="identifier">begin</span></code></a><span class="special">(</span><span class="identifier">s</span><span class="special">)))</span>
<pre class="programlisting"><a href="../../../iterator/functions/deref.html" title="deref"><tt class="computeroutput"><span class="identifier">deref</span></tt></a><span class="special">(</span><a href="../../../iterator/functions/advance.html" title="advance"><tt class="computeroutput"><span class="identifier">advance</span></tt></a><span class="special">&lt;</span><span class="identifier">N</span><span class="special">&gt;(</span><a href="begin.html" title="begin"><tt class="computeroutput"><span class="identifier">begin</span></tt></a><span class="special">(</span><span class="identifier">s</span><span class="special">)))</span>
</pre>
<a name="fusion.sequence.intrinsic.functions.at_c.header"></a><h6>
<a name="id593193"></a>
<a class="link" href="at_c.html#fusion.sequence.intrinsic.functions.at_c.header">Header</a>
<a name="id456804"></a>
<a href="at_c.html#fusion.sequence.intrinsic.functions.at_c.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">intrinsic</span><span class="special">/</span><span class="identifier">at_c</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">at_c</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
</pre>
<a name="fusion.sequence.intrinsic.functions.at_c.example"></a><h6>
<a name="id593308"></a>
<a class="link" href="at_c.html#fusion.sequence.intrinsic.functions.at_c.example">Example</a>
<a name="id456970"></a>
<a href="at_c.html#fusion.sequence.intrinsic.functions.at_c.example">Example</a>
</h6>
<pre class="programlisting"><a class="link" href="../../../container/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">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>
<pre class="programlisting"><a href="../../../container/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">v</span><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="number">2</span><span class="special">,</span> <span class="number">3</span><span class="special">);</span>
<span class="identifier">assert</span><span class="special">(</span><span class="identifier">at_c</span><span class="special">&lt;</span><span class="number">1</span><span class="special">&gt;(</span><span class="identifier">v</span><span class="special">)</span> <span class="special">==</span> <span class="number">2</span><span class="special">);</span>
</pre>
</div>

View File

@ -3,10 +3,10 @@
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>at_key</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.0">
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
<link rel="home" href="../../../../index.html" title="Chapter<65>1.<2E>Fusion 2.0">
<link rel="up" href="../functions.html" title="Functions">
<link rel="prev" href="has_key.html" title="has_key">
<link rel="previous" href="has_key.html" title="has_key">
<link rel="next" href="swap.html" title="swap">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@ -22,32 +22,35 @@
<div class="spirit-nav">
<a accesskey="p" href="has_key.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="swap.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="at_key">
<div class="titlepage"><div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.functions.at_key"></a><a class="link" href="at_key.html" title="at_key">at_key</a>
</h5></div></div></div>
<div class="section" lang="en">
<div class="titlepage">
<div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.functions.at_key"></a><a href="at_key.html" title="at_key">at_key</a>
</h5></div></div>
<div></div>
</div>
<a name="fusion.sequence.intrinsic.functions.at_key.description"></a><h6>
<a name="id594064"></a>
<a class="link" href="at_key.html#fusion.sequence.intrinsic.functions.at_key.description">Description</a>
<a name="id458062"></a>
<a href="at_key.html#fusion.sequence.intrinsic.functions.at_key.description">Description</a>
</h6>
<p>
Returns the element associated with a Key from the sequence.
</p>
<a name="fusion.sequence.intrinsic.functions.at_key.synopsis"></a><h6>
<a name="id594081"></a>
<a class="link" href="at_key.html#fusion.sequence.intrinsic.functions.at_key.synopsis">Synopsis</a>
<a name="id458092"></a>
<a href="at_key.html#fusion.sequence.intrinsic.functions.at_key.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Key</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
<span class="keyword">typename</span> <a class="link" href="../metafunctions/at_key.html" title="at_key"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at_key</span></code></a><span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">Key</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="keyword">typename</span> <a href="../metafunctions/at_key.html" title="at_key"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at_key</span></tt></a><span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">Key</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">at_key</span><span class="special">(</span><span class="identifier">Sequence</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Key</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
<span class="keyword">typename</span> <a class="link" href="../metafunctions/at_key.html" title="at_key"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at_key</span></code></a><span class="special">&lt;</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">Key</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="keyword">typename</span> <a href="../metafunctions/at_key.html" title="at_key"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at_key</span></tt></a><span class="special">&lt;</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">,</span> <span class="identifier">Key</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">at_key</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
</pre>
<a name="fusion.sequence.intrinsic.functions.at_key.parameters"></a><h6>
<a name="id594314"></a>
<a class="link" href="at_key.html#fusion.sequence.intrinsic.functions.at_key.parameters">Parameters</a>
<a name="id458422"></a>
<a href="at_key.html#fusion.sequence.intrinsic.functions.at_key.parameters">Parameters</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@ -56,95 +59,78 @@
<col>
</colgroup>
<thead><tr>
<th>
<p>
<th><p>
Parameter
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Requirement
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Description
</p>
</th>
</p></th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">seq</span></code>
</p>
</td>
<td>
<p>
Model of <a class="link" href="../../concepts/associative_sequence.html" title="Associative Sequence">Associative
<td><p>
<tt class="computeroutput"><span class="identifier">seq</span></tt>
</p></td>
<td><p>
Model of <a href="../../concepts/associative_sequence.html" title="Associative
Sequence">Associative
Sequence</a>
</p>
</td>
<td>
<p>
</p></td>
<td><p>
The sequence we wish to investigate.
</p>
</td>
</p></td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">Key</span></code>
</p>
</td>
<td>
<p>
<td><p>
<tt class="computeroutput"><span class="identifier">Key</span></tt>
</p></td>
<td><p>
Any type
</p>
</td>
<td>
<p>
</p></td>
<td><p>
The queried key.
</p>
</td>
</p></td>
</tr>
</tbody>
</table></div>
<a name="fusion.sequence.intrinsic.functions.at_key.expression_semantics"></a><h6>
<a name="id594435"></a>
<a class="link" href="at_key.html#fusion.sequence.intrinsic.functions.at_key.expression_semantics">Expression
<a name="id458572"></a>
<a href="at_key.html#fusion.sequence.intrinsic.functions.at_key.expression_semantics">Expression
Semantics</a>
</h6>
<pre class="programlisting"><span class="identifier">at_key</span><span class="special">&lt;</span><span class="identifier">Key</span><span class="special">&gt;(</span><span class="identifier">seq</span><span class="special">);</span>
</pre>
<p>
<span class="bold"><strong>Return type</strong></span>: Returns a reference to
the element associated with Key from the sequence <code class="computeroutput"><span class="identifier">seq</span></code>
if <code class="computeroutput"><span class="identifier">seq</span></code> is mutable and
<code class="computeroutput"><span class="identifier">e</span> <span class="special">=</span>
<span class="identifier">o</span></code>, where <code class="computeroutput"><span class="identifier">e</span></code>
<span class="bold"><b>Return type</b></span>: Returns a reference to
the element associated with Key from the sequence <tt class="computeroutput"><span class="identifier">seq</span></tt>
if <tt class="computeroutput"><span class="identifier">seq</span></tt> is mutable and
<tt class="computeroutput"><span class="identifier">e</span> <span class="special">=</span>
<span class="identifier">o</span></tt>, where <tt class="computeroutput"><span class="identifier">e</span></tt>
is the element associated with Key, is a valid expression. Else, returns
a type convertable to the element associated with Key.
</p>
<p>
<span class="bold"><strong>Precondition</strong></span>: <code class="computeroutput"><span class="identifier">has_key</span><span class="special">&lt;</span><span class="identifier">Key</span><span class="special">&gt;(</span><span class="identifier">seq</span><span class="special">)</span> <span class="special">==</span> <span class="keyword">true</span></code>
<span class="bold"><b>Precondition</b></span>: <tt class="computeroutput"><span class="identifier">has_key</span><span class="special">&lt;</span><span class="identifier">Key</span><span class="special">&gt;(</span><span class="identifier">seq</span><span class="special">)</span> <span class="special">==</span> <span class="keyword">true</span></tt>
</p>
<p>
<span class="bold"><strong>Semantics</strong></span>: Returns the element associated
<span class="bold"><b>Semantics</b></span>: Returns the element associated
with Key.
</p>
<a name="fusion.sequence.intrinsic.functions.at_key.header"></a><h6>
<a name="id594575"></a>
<a class="link" href="at_key.html#fusion.sequence.intrinsic.functions.at_key.header">Header</a>
<a name="id458777"></a>
<a href="at_key.html#fusion.sequence.intrinsic.functions.at_key.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">intrinsic</span><span class="special">/</span><span class="identifier">at_key</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">at_key</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
</pre>
<a name="fusion.sequence.intrinsic.functions.at_key.example"></a><h6>
<a name="id594690"></a>
<a class="link" href="at_key.html#fusion.sequence.intrinsic.functions.at_key.example">Example</a>
<a name="id458943"></a>
<a href="at_key.html#fusion.sequence.intrinsic.functions.at_key.example">Example</a>
</h6>
<pre class="programlisting"><a class="link" href="../../../container/set.html" title="set"><code class="computeroutput"><span class="identifier">set</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">,</span> <span class="keyword">bool</span><span class="special">&gt;</span> <span class="identifier">s</span><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="char">'x'</span><span class="special">,</span> <span class="keyword">true</span><span class="special">);</span>
<pre class="programlisting"><a href="../../../container/set.html" title="set"><tt class="computeroutput"><span class="identifier">set</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">,</span> <span class="keyword">bool</span><span class="special">&gt;</span> <span class="identifier">s</span><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="char">'x'</span><span class="special">,</span> <span class="keyword">true</span><span class="special">);</span>
<span class="identifier">assert</span><span class="special">(</span><span class="identifier">at_key</span><span class="special">&lt;</span><span class="keyword">char</span><span class="special">&gt;(</span><span class="identifier">s</span><span class="special">)</span> <span class="special">==</span> <span class="char">'x'</span><span class="special">);</span>
</pre>
</div>

View File

@ -3,10 +3,10 @@
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>back</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.0">
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
<link rel="home" href="../../../../index.html" title="Chapter<65>1.<2E>Fusion 2.0">
<link rel="up" href="../functions.html" title="Functions">
<link rel="prev" href="front.html" title="front">
<link rel="previous" href="front.html" title="front">
<link rel="next" href="size.html" title="size">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@ -22,32 +22,35 @@
<div class="spirit-nav">
<a accesskey="p" href="front.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="size.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="back">
<div class="titlepage"><div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.functions.back"></a><a class="link" href="back.html" title="back">back</a>
</h5></div></div></div>
<div class="section" lang="en">
<div class="titlepage">
<div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.functions.back"></a><a href="back.html" title="back">back</a>
</h5></div></div>
<div></div>
</div>
<a name="fusion.sequence.intrinsic.functions.back.description"></a><h6>
<a name="id589467"></a>
<a class="link" href="back.html#fusion.sequence.intrinsic.functions.back.description">Description</a>
<a name="id453047"></a>
<a href="back.html#fusion.sequence.intrinsic.functions.back.description">Description</a>
</h6>
<p>
Returns the last element in the sequence.
</p>
<a name="fusion.sequence.intrinsic.functions.back.synopsis"></a><h6>
<a name="id589484"></a>
<a class="link" href="back.html#fusion.sequence.intrinsic.functions.back.synopsis">Synopsis</a>
<a name="id453076"></a>
<a href="back.html#fusion.sequence.intrinsic.functions.back.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
<span class="keyword">typename</span> <a class="link" href="../metafunctions/back.html" title="back"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">back</span></code></a><span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="keyword">typename</span> <a href="../metafunctions/back.html" title="back"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">back</span></tt></a><span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">back</span><span class="special">(</span><span class="identifier">Sequence</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
<span class="keyword">typename</span> <a class="link" href="../metafunctions/back.html" title="back"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">back</span></code></a><span class="special">&lt;</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="keyword">typename</span> <a href="../metafunctions/back.html" title="back"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">back</span></tt></a><span class="special">&lt;</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">back</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
</pre>
<a name="fusion.sequence.intrinsic.functions.back.parameters"></a><h6>
<a name="id589674"></a>
<a class="link" href="back.html#fusion.sequence.intrinsic.functions.back.parameters">Parameters</a>
<a name="id453351"></a>
<a href="back.html#fusion.sequence.intrinsic.functions.back.parameters">Parameters</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@ -56,76 +59,65 @@
<col>
</colgroup>
<thead><tr>
<th>
<p>
<th><p>
Parameter
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Requirement
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Description
</p>
</th>
</p></th>
</tr></thead>
<tbody><tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">seq</span></code>
</p>
</td>
<td>
<p>
Model of <a class="link" href="../../concepts/bidirectional_sequence.html" title="Bidirectional Sequence">Bidirectional
<td><p>
<tt class="computeroutput"><span class="identifier">seq</span></tt>
</p></td>
<td><p>
Model of <a href="../../concepts/bidirectional_sequence.html" title="Bidirectional
Sequence">Bidirectional
Sequence</a>
</p>
</td>
<td>
<p>
</p></td>
<td><p>
The sequence we wish to investigate.
</p>
</td>
</p></td>
</tr></tbody>
</table></div>
<a name="fusion.sequence.intrinsic.functions.back.expression_semantics"></a><h6>
<a name="id589764"></a>
<a class="link" href="back.html#fusion.sequence.intrinsic.functions.back.expression_semantics">Expression
<a name="id453464"></a>
<a href="back.html#fusion.sequence.intrinsic.functions.back.expression_semantics">Expression
Semantics</a>
</h6>
<pre class="programlisting"><span class="identifier">back</span><span class="special">(</span><span class="identifier">seq</span><span class="special">);</span>
</pre>
<p>
<span class="bold"><strong>Return type</strong></span>: Returns a reference to
the last element in the sequence <code class="computeroutput"><span class="identifier">seq</span></code>
if <code class="computeroutput"><span class="identifier">seq</span></code> is mutable and
<code class="computeroutput"><span class="identifier">e</span> <span class="special">=</span>
<span class="identifier">o</span></code>, where <code class="computeroutput"><span class="identifier">e</span></code>
<span class="bold"><b>Return type</b></span>: Returns a reference to
the last element in the sequence <tt class="computeroutput"><span class="identifier">seq</span></tt>
if <tt class="computeroutput"><span class="identifier">seq</span></tt> is mutable and
<tt class="computeroutput"><span class="identifier">e</span> <span class="special">=</span>
<span class="identifier">o</span></tt>, where <tt class="computeroutput"><span class="identifier">e</span></tt>
is the last element in the sequence, is a valid expression. Else, returns
a type convertable to the last element in the sequence.
</p>
<p>
<span class="bold"><strong>Precondition</strong></span>: <code class="computeroutput"><a class="link" href="empty.html" title="empty"><code class="computeroutput"><span class="identifier">empty</span></code></a><span class="special">(</span><span class="identifier">seq</span><span class="special">)</span> <span class="special">==</span> <span class="keyword">false</span></code>
<span class="bold"><b>Precondition</b></span>: <tt class="computeroutput"><a href="empty.html" title="empty"><tt class="computeroutput"><span class="identifier">empty</span></tt></a><span class="special">(</span><span class="identifier">seq</span><span class="special">)</span> <span class="special">==</span> <span class="keyword">false</span></tt>
</p>
<p>
<span class="bold"><strong>Semantics</strong></span>: Returns the last element
<span class="bold"><b>Semantics</b></span>: Returns the last element
in the sequence.
</p>
<a name="fusion.sequence.intrinsic.functions.back.header"></a><h6>
<a name="id589894"></a>
<a class="link" href="back.html#fusion.sequence.intrinsic.functions.back.header">Header</a>
<a name="id453659"></a>
<a href="back.html#fusion.sequence.intrinsic.functions.back.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">intrinsic</span><span class="special">/</span><span class="identifier">back</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">back</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
</pre>
<a name="fusion.sequence.intrinsic.functions.back.example"></a><h6>
<a name="id590010"></a>
<a class="link" href="back.html#fusion.sequence.intrinsic.functions.back.example">Example</a>
<a name="id453825"></a>
<a href="back.html#fusion.sequence.intrinsic.functions.back.example">Example</a>
</h6>
<pre class="programlisting"><a class="link" href="../../../container/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">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>
<pre class="programlisting"><a href="../../../container/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">v</span><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="number">2</span><span class="special">,</span> <span class="number">3</span><span class="special">);</span>
<span class="identifier">assert</span><span class="special">(</span><span class="identifier">back</span><span class="special">(</span><span class="identifier">v</span><span class="special">)</span> <span class="special">==</span> <span class="number">3</span><span class="special">);</span>
</pre>
</div>

View File

@ -3,10 +3,10 @@
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>begin</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.0">
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
<link rel="home" href="../../../../index.html" title="Chapter<65>1.<2E>Fusion 2.0">
<link rel="up" href="../functions.html" title="Functions">
<link rel="prev" href="../functions.html" title="Functions">
<link rel="previous" href="../functions.html" title="Functions">
<link rel="next" href="end.html" title="end">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@ -22,32 +22,35 @@
<div class="spirit-nav">
<a accesskey="p" href="../functions.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="end.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="begin">
<div class="titlepage"><div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.functions.begin"></a><a class="link" href="begin.html" title="begin">begin</a>
</h5></div></div></div>
<div class="section" lang="en">
<div class="titlepage">
<div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.functions.begin"></a><a href="begin.html" title="begin">begin</a>
</h5></div></div>
<div></div>
</div>
<a name="fusion.sequence.intrinsic.functions.begin.description"></a><h6>
<a name="id585594"></a>
<a class="link" href="begin.html#fusion.sequence.intrinsic.functions.begin.description">Description</a>
<a name="id449344"></a>
<a href="begin.html#fusion.sequence.intrinsic.functions.begin.description">Description</a>
</h6>
<p>
Returns an iterator pointing to the first element in the sequence.
</p>
<a name="fusion.sequence.intrinsic.functions.begin.synopsis"></a><h6>
<a name="id585610"></a>
<a class="link" href="begin.html#fusion.sequence.intrinsic.functions.begin.synopsis">Synopsis</a>
<a name="id449373"></a>
<a href="begin.html#fusion.sequence.intrinsic.functions.begin.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
<span class="keyword">typename</span> <a class="link" href="../metafunctions/begin.html" title="begin"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">begin</span></code></a><span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="keyword">typename</span> <a href="../metafunctions/begin.html" title="begin"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">begin</span></tt></a><span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">begin</span><span class="special">(</span><span class="identifier">Sequence</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
<span class="keyword">typename</span> <a class="link" href="../metafunctions/begin.html" title="begin"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">begin</span></code></a><span class="special">&lt;</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="keyword">typename</span> <a href="../metafunctions/begin.html" title="begin"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">begin</span></tt></a><span class="special">&lt;</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">begin</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
</pre>
<a name="fusion.sequence.intrinsic.functions.begin.parameters"></a><h6>
<a name="id585883"></a>
<a class="link" href="begin.html#fusion.sequence.intrinsic.functions.begin.parameters">Parameters</a>
<a name="id449647"></a>
<a href="begin.html#fusion.sequence.intrinsic.functions.begin.parameters">Parameters</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@ -56,77 +59,72 @@
<col>
</colgroup>
<thead><tr>
<th>
<p>
<th><p>
Parameter
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Requirement
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Description
</p>
</th>
</p></th>
</tr></thead>
<tbody><tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">seq</span></code>
</p>
</td>
<td>
<p>
Model of <a class="link" href="../../concepts/forward_sequence.html" title="Forward Sequence">Forward
<td><p>
<tt class="computeroutput"><span class="identifier">seq</span></tt>
</p></td>
<td><p>
Model of <a href="../../concepts/forward_sequence.html" title="Forward
Sequence">Forward
Sequence</a>
</p>
</td>
<td>
<p>
</p></td>
<td><p>
The sequence we wish to get an iterator from.
</p>
</td>
</p></td>
</tr></tbody>
</table></div>
<a name="fusion.sequence.intrinsic.functions.begin.expression_semantics"></a><h6>
<a name="id585973"></a>
<a class="link" href="begin.html#fusion.sequence.intrinsic.functions.begin.expression_semantics">Expression
<a name="id449760"></a>
<a href="begin.html#fusion.sequence.intrinsic.functions.begin.expression_semantics">Expression
Semantics</a>
</h6>
<pre class="programlisting"><span class="identifier">begin</span><span class="special">(</span><span class="identifier">seq</span><span class="special">);</span>
</pre>
<p>
<span class="bold"><strong>Return type</strong></span>: <a class="link" href="../../../iterator/concepts/forward_iterator.html" title="Forward Iterator">Forward
Iterator</a> if <code class="computeroutput"><span class="identifier">seq</span></code>
is a <a class="link" href="../../concepts/forward_sequence.html" title="Forward Sequence">Forward
Sequence</a> else, <a class="link" href="../../../iterator/concepts/bidirectional_iterator.html" title="Bidirectional Iterator">Bidirectional
Iterator</a> if <code class="computeroutput"><span class="identifier">seq</span></code>
is a <a class="link" href="../../concepts/bidirectional_sequence.html" title="Bidirectional Sequence">Bidirectional
Sequence</a> else, <a class="link" href="../../../iterator/concepts/random_access_iterator.html" title="Random Access Iterator">Random
Access Iterator</a> if <code class="computeroutput"><span class="identifier">seq</span></code>
is a <a class="link" href="../../concepts/random_access_sequence.html" title="Random Access Sequence">Random
<span class="bold"><b>Return type</b></span>: <a href="../../../iterator/concepts/forward_iterator.html" title="Forward
Iterator">Forward
Iterator</a> if <tt class="computeroutput"><span class="identifier">seq</span></tt>
is a <a href="../../concepts/forward_sequence.html" title="Forward
Sequence">Forward
Sequence</a> else, <a href="../../../iterator/concepts/bidirectional_iterator.html" title="Bidirectional
Iterator">Bidirectional
Iterator</a> if <tt class="computeroutput"><span class="identifier">seq</span></tt>
is a <a href="../../concepts/bidirectional_sequence.html" title="Bidirectional
Sequence">Bidirectional
Sequence</a> else, <a href="../../../iterator/concepts/random_access_iterator.html" title="Random
Access Iterator">Random
Access Iterator</a> if <tt class="computeroutput"><span class="identifier">seq</span></tt>
is a <a href="../../concepts/random_access_sequence.html" title="Random
Access Sequence">Random
Access Sequence</a>.
</p>
<p>
<span class="bold"><strong>Semantics</strong></span>: Returns an iterator pointing
<span class="bold"><b>Semantics</b></span>: Returns an iterator pointing
to the first element in the sequence.
</p>
<a name="fusion.sequence.intrinsic.functions.begin.header"></a><h6>
<a name="id586075"></a>
<a class="link" href="begin.html#fusion.sequence.intrinsic.functions.begin.header">Header</a>
<a name="id449927"></a>
<a href="begin.html#fusion.sequence.intrinsic.functions.begin.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">intrinsic</span><span class="special">/</span><span class="identifier">begin</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">begin</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
</pre>
<a name="fusion.sequence.intrinsic.functions.begin.example"></a><h6>
<a name="id586191"></a>
<a class="link" href="begin.html#fusion.sequence.intrinsic.functions.begin.example">Example</a>
<a name="id450094"></a>
<a href="begin.html#fusion.sequence.intrinsic.functions.begin.example">Example</a>
</h6>
<pre class="programlisting"><a class="link" href="../../../container/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">v</span><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="number">2</span><span class="special">,</span> <span class="number">3</span><span class="special">);</span>
<span class="identifier">assert</span><span class="special">(</span><a class="link" href="../../../iterator/functions/deref.html" title="deref"><code class="computeroutput"><span class="identifier">deref</span></code></a><span class="special">(</span><span class="identifier">begin</span><span class="special">(</span><span class="identifier">v</span><span class="special">))</span> <span class="special">==</span> <span class="number">1</span><span class="special">);</span>
<pre class="programlisting"><a href="../../../container/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">v</span><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="number">2</span><span class="special">,</span> <span class="number">3</span><span class="special">);</span>
<span class="identifier">assert</span><span class="special">(</span><a href="../../../iterator/functions/deref.html" title="deref"><tt class="computeroutput"><span class="identifier">deref</span></tt></a><span class="special">(</span><span class="identifier">begin</span><span class="special">(</span><span class="identifier">v</span><span class="special">))</span> <span class="special">==</span> <span class="number">1</span><span class="special">);</span>
</pre>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>

View File

@ -3,10 +3,10 @@
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>empty</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.0">
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
<link rel="home" href="../../../../index.html" title="Chapter<65>1.<2E>Fusion 2.0">
<link rel="up" href="../functions.html" title="Functions">
<link rel="prev" href="end.html" title="end">
<link rel="previous" href="end.html" title="end">
<link rel="next" href="front.html" title="front">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@ -22,30 +22,33 @@
<div class="spirit-nav">
<a accesskey="p" href="end.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="front.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="empty">
<div class="titlepage"><div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.functions.empty"></a><a class="link" href="empty.html" title="empty">empty</a>
</h5></div></div></div>
<div class="section" lang="en">
<div class="titlepage">
<div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.functions.empty"></a><a href="empty.html" title="empty">empty</a>
</h5></div></div>
<div></div>
</div>
<a name="fusion.sequence.intrinsic.functions.empty.description"></a><h6>
<a name="id587007"></a>
<a class="link" href="empty.html#fusion.sequence.intrinsic.functions.empty.description">Description</a>
<a name="id451280"></a>
<a href="empty.html#fusion.sequence.intrinsic.functions.empty.description">Description</a>
</h6>
<p>
Returns a type convertible to <code class="computeroutput"><span class="keyword">bool</span></code>
that evaluates to <code class="computeroutput"><span class="keyword">true</span></code> if
the sequence is empty, else, evaluates to <code class="computeroutput"><span class="keyword">false</span></code>.
Returns a type convertible to <tt class="computeroutput"><span class="keyword">bool</span></tt>
that evaluates to <tt class="computeroutput"><span class="keyword">true</span></tt> if
the sequence is empty, else, evaluates to <tt class="computeroutput"><span class="keyword">false</span></tt>.
</p>
<a name="fusion.sequence.intrinsic.functions.empty.synopsis"></a><h6>
<a name="id587046"></a>
<a class="link" href="empty.html#fusion.sequence.intrinsic.functions.empty.synopsis">Synopsis</a>
<a name="id451345"></a>
<a href="empty.html#fusion.sequence.intrinsic.functions.empty.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
<span class="keyword">typename</span> <a class="link" href="../metafunctions/empty.html" title="empty"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">empty</span></code></a><span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="keyword">typename</span> <a href="../metafunctions/empty.html" title="empty"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">empty</span></tt></a><span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">empty</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
</pre>
<a name="fusion.sequence.intrinsic.functions.empty.parameters"></a><h6>
<a name="id587149"></a>
<a class="link" href="empty.html#fusion.sequence.intrinsic.functions.empty.parameters">Parameters</a>
<a name="id451498"></a>
<a href="empty.html#fusion.sequence.intrinsic.functions.empty.parameters">Parameters</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@ -54,67 +57,56 @@
<col>
</colgroup>
<thead><tr>
<th>
<p>
<th><p>
Parameter
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Requirement
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Description
</p>
</th>
</p></th>
</tr></thead>
<tbody><tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">seq</span></code>
</p>
</td>
<td>
<p>
Model of <a class="link" href="../../concepts/forward_sequence.html" title="Forward Sequence">Forward
<td><p>
<tt class="computeroutput"><span class="identifier">seq</span></tt>
</p></td>
<td><p>
Model of <a href="../../concepts/forward_sequence.html" title="Forward
Sequence">Forward
Sequence</a>
</p>
</td>
<td>
<p>
</p></td>
<td><p>
The sequence we wish to investigate.
</p>
</td>
</p></td>
</tr></tbody>
</table></div>
<a name="fusion.sequence.intrinsic.functions.empty.expression_semantics"></a><h6>
<a name="id587239"></a>
<a class="link" href="empty.html#fusion.sequence.intrinsic.functions.empty.expression_semantics">Expression
<a name="id451612"></a>
<a href="empty.html#fusion.sequence.intrinsic.functions.empty.expression_semantics">Expression
Semantics</a>
</h6>
<pre class="programlisting"><span class="identifier">empty</span><span class="special">(</span><span class="identifier">seq</span><span class="special">);</span>
</pre>
<p>
<span class="bold"><strong>Return type</strong></span>: Convertible to <code class="computeroutput"><span class="keyword">bool</span></code>.
<span class="bold"><b>Return type</b></span>: Convertible to <tt class="computeroutput"><span class="keyword">bool</span></tt>.
</p>
<p>
<span class="bold"><strong>Semantics</strong></span>: Evaluates to <code class="computeroutput"><span class="keyword">true</span></code> if the sequence is empty, else, evaluates
to <code class="computeroutput"><span class="keyword">false</span></code>.
<span class="bold"><b>Semantics</b></span>: Evaluates to <tt class="computeroutput"><span class="keyword">true</span></tt> if the sequence is empty, else, evaluates
to <tt class="computeroutput"><span class="keyword">false</span></tt>.
</p>
<a name="fusion.sequence.intrinsic.functions.empty.header"></a><h6>
<a name="id587314"></a>
<a class="link" href="empty.html#fusion.sequence.intrinsic.functions.empty.header">Header</a>
<a name="id451723"></a>
<a href="empty.html#fusion.sequence.intrinsic.functions.empty.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">intrinsic</span><span class="special">/</span><span class="identifier">empty</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">empty</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
</pre>
<a name="fusion.sequence.intrinsic.functions.empty.example"></a><h6>
<a name="id587429"></a>
<a class="link" href="empty.html#fusion.sequence.intrinsic.functions.empty.example">Example</a>
<a name="id451890"></a>
<a href="empty.html#fusion.sequence.intrinsic.functions.empty.example">Example</a>
</h6>
<pre class="programlisting"><a class="link" href="../../../container/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">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>
<pre class="programlisting"><a href="../../../container/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">v</span><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="number">2</span><span class="special">,</span> <span class="number">3</span><span class="special">);</span>
<span class="identifier">assert</span><span class="special">(</span><span class="identifier">empty</span><span class="special">(</span><span class="identifier">v</span><span class="special">)</span> <span class="special">==</span> <span class="keyword">false</span><span class="special">);</span>
</pre>
</div>

View File

@ -3,10 +3,10 @@
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>end</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.0">
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
<link rel="home" href="../../../../index.html" title="Chapter<65>1.<2E>Fusion 2.0">
<link rel="up" href="../functions.html" title="Functions">
<link rel="prev" href="begin.html" title="begin">
<link rel="previous" href="begin.html" title="begin">
<link rel="next" href="empty.html" title="empty">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@ -22,32 +22,35 @@
<div class="spirit-nav">
<a accesskey="p" href="begin.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="empty.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="end">
<div class="titlepage"><div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.functions.end"></a><a class="link" href="end.html" title="end">end</a>
</h5></div></div></div>
<div class="section" lang="en">
<div class="titlepage">
<div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.functions.end"></a><a href="end.html" title="end">end</a>
</h5></div></div>
<div></div>
</div>
<a name="fusion.sequence.intrinsic.functions.end.description"></a><h6>
<a name="id586336"></a>
<a class="link" href="end.html#fusion.sequence.intrinsic.functions.end.description">Description</a>
<a name="id450304"></a>
<a href="end.html#fusion.sequence.intrinsic.functions.end.description">Description</a>
</h6>
<p>
Returns an iterator pointing to one element past the end of the sequence.
</p>
<a name="fusion.sequence.intrinsic.functions.end.synopsis"></a><h6>
<a name="id586353"></a>
<a class="link" href="end.html#fusion.sequence.intrinsic.functions.end.synopsis">Synopsis</a>
<a name="id450334"></a>
<a href="end.html#fusion.sequence.intrinsic.functions.end.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
<span class="keyword">typename</span> <a class="link" href="../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">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="keyword">typename</span> <a href="../metafunctions/end.html" title="end"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">end</span></tt></a><span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">end</span><span class="special">(</span><span class="identifier">Sequence</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
<span class="keyword">typename</span> <a class="link" href="../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">&lt;</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="keyword">typename</span> <a href="../metafunctions/end.html" title="end"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">end</span></tt></a><span class="special">&lt;</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">end</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
</pre>
<a name="fusion.sequence.intrinsic.functions.end.parameters"></a><h6>
<a name="id586542"></a>
<a class="link" href="end.html#fusion.sequence.intrinsic.functions.end.parameters">Parameters</a>
<a name="id450606"></a>
<a href="end.html#fusion.sequence.intrinsic.functions.end.parameters">Parameters</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@ -56,77 +59,72 @@
<col>
</colgroup>
<thead><tr>
<th>
<p>
<th><p>
Parameter
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Requirement
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Description
</p>
</th>
</p></th>
</tr></thead>
<tbody><tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">seq</span></code>
</p>
</td>
<td>
<p>
Model of <a class="link" href="../../concepts/forward_sequence.html" title="Forward Sequence">Forward
<td><p>
<tt class="computeroutput"><span class="identifier">seq</span></tt>
</p></td>
<td><p>
Model of <a href="../../concepts/forward_sequence.html" title="Forward
Sequence">Forward
Sequence</a>
</p>
</td>
<td>
<p>
</p></td>
<td><p>
The sequence we wish to get an iterator from.
</p>
</td>
</p></td>
</tr></tbody>
</table></div>
<a name="fusion.sequence.intrinsic.functions.end.expression_semantics"></a><h6>
<a name="id586632"></a>
<a class="link" href="end.html#fusion.sequence.intrinsic.functions.end.expression_semantics">Expression
<a name="id450718"></a>
<a href="end.html#fusion.sequence.intrinsic.functions.end.expression_semantics">Expression
Semantics</a>
</h6>
<pre class="programlisting"><span class="identifier">end</span><span class="special">(</span><span class="identifier">seq</span><span class="special">);</span>
</pre>
<p>
<span class="bold"><strong>Return type</strong></span>: <a class="link" href="../../../iterator/concepts/forward_iterator.html" title="Forward Iterator">Forward
Iterator</a> if <code class="computeroutput"><span class="identifier">seq</span></code>
is a <a class="link" href="../../concepts/forward_sequence.html" title="Forward Sequence">Forward
Sequence</a> else, <a class="link" href="../../../iterator/concepts/bidirectional_iterator.html" title="Bidirectional Iterator">Bidirectional
Iterator</a> if <code class="computeroutput"><span class="identifier">seq</span></code>
is a <a class="link" href="../../concepts/bidirectional_sequence.html" title="Bidirectional Sequence">Bidirectional
Sequence</a> else, <a class="link" href="../../../iterator/concepts/random_access_iterator.html" title="Random Access Iterator">Random
Access Iterator</a> if <code class="computeroutput"><span class="identifier">seq</span></code>
is a <a class="link" href="../../concepts/random_access_sequence.html" title="Random Access Sequence">Random
<span class="bold"><b>Return type</b></span>: <a href="../../../iterator/concepts/forward_iterator.html" title="Forward
Iterator">Forward
Iterator</a> if <tt class="computeroutput"><span class="identifier">seq</span></tt>
is a <a href="../../concepts/forward_sequence.html" title="Forward
Sequence">Forward
Sequence</a> else, <a href="../../../iterator/concepts/bidirectional_iterator.html" title="Bidirectional
Iterator">Bidirectional
Iterator</a> if <tt class="computeroutput"><span class="identifier">seq</span></tt>
is a <a href="../../concepts/bidirectional_sequence.html" title="Bidirectional
Sequence">Bidirectional
Sequence</a> else, <a href="../../../iterator/concepts/random_access_iterator.html" title="Random
Access Iterator">Random
Access Iterator</a> if <tt class="computeroutput"><span class="identifier">seq</span></tt>
is a <a href="../../concepts/random_access_sequence.html" title="Random
Access Sequence">Random
Access Sequence</a>.
</p>
<p>
<span class="bold"><strong>Semantics</strong></span>: Returns an iterator pointing
<span class="bold"><b>Semantics</b></span>: Returns an iterator pointing
to one element past the end of the sequence.
</p>
<a name="fusion.sequence.intrinsic.functions.end.header"></a><h6>
<a name="id586734"></a>
<a class="link" href="end.html#fusion.sequence.intrinsic.functions.end.header">Header</a>
<a name="id450886"></a>
<a href="end.html#fusion.sequence.intrinsic.functions.end.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">intrinsic</span><span class="special">/</span><span class="identifier">end</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">end</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
</pre>
<a name="fusion.sequence.intrinsic.functions.end.example"></a><h6>
<a name="id586849"></a>
<a class="link" href="end.html#fusion.sequence.intrinsic.functions.end.example">Example</a>
<a name="id451051"></a>
<a href="end.html#fusion.sequence.intrinsic.functions.end.example">Example</a>
</h6>
<pre class="programlisting"><a class="link" href="../../../container/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">v</span><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="number">2</span><span class="special">,</span> <span class="number">3</span><span class="special">);</span>
<span class="identifier">assert</span><span class="special">(</span><a class="link" href="../../../iterator/functions/deref.html" title="deref"><code class="computeroutput"><span class="identifier">deref</span></code></a><span class="special">(</span><a class="link" href="../../../iterator/functions/prior.html" title="prior"><code class="computeroutput"><span class="identifier">prior</span></code></a><span class="special">(</span><span class="identifier">end</span><span class="special">(</span><span class="identifier">v</span><span class="special">)))</span> <span class="special">==</span> <span class="number">3</span><span class="special">);</span>
<pre class="programlisting"><a href="../../../container/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">v</span><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="number">2</span><span class="special">,</span> <span class="number">3</span><span class="special">);</span>
<span class="identifier">assert</span><span class="special">(</span><a href="../../../iterator/functions/deref.html" title="deref"><tt class="computeroutput"><span class="identifier">deref</span></tt></a><span class="special">(</span><a href="../../../iterator/functions/prior.html" title="prior"><tt class="computeroutput"><span class="identifier">prior</span></tt></a><span class="special">(</span><span class="identifier">end</span><span class="special">(</span><span class="identifier">v</span><span class="special">)))</span> <span class="special">==</span> <span class="number">3</span><span class="special">);</span>
</pre>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>

View File

@ -3,10 +3,10 @@
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>front</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.0">
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
<link rel="home" href="../../../../index.html" title="Chapter<65>1.<2E>Fusion 2.0">
<link rel="up" href="../functions.html" title="Functions">
<link rel="prev" href="empty.html" title="empty">
<link rel="previous" href="empty.html" title="empty">
<link rel="next" href="back.html" title="back">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@ -22,32 +22,35 @@
<div class="spirit-nav">
<a accesskey="p" href="empty.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="back.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="front">
<div class="titlepage"><div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.functions.front"></a><a class="link" href="front.html" title="front">front</a>
</h5></div></div></div>
<div class="section" lang="en">
<div class="titlepage">
<div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.functions.front"></a><a href="front.html" title="front">front</a>
</h5></div></div>
<div></div>
</div>
<a name="fusion.sequence.intrinsic.functions.front.description"></a><h6>
<a name="id587562"></a>
<a class="link" href="front.html#fusion.sequence.intrinsic.functions.front.description">Description</a>
<a name="id452080"></a>
<a href="front.html#fusion.sequence.intrinsic.functions.front.description">Description</a>
</h6>
<p>
Returns the first element in the sequence.
</p>
<a name="fusion.sequence.intrinsic.functions.front.synopsis"></a><h6>
<a name="id587579"></a>
<a class="link" href="front.html#fusion.sequence.intrinsic.functions.front.synopsis">Synopsis</a>
<a name="id452109"></a>
<a href="front.html#fusion.sequence.intrinsic.functions.front.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
<span class="keyword">typename</span> <a class="link" href="../metafunctions/front.html" title="front"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">front</span></code></a><span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="keyword">typename</span> <a href="../metafunctions/front.html" title="front"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">front</span></tt></a><span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">front</span><span class="special">(</span><span class="identifier">Sequence</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
<span class="keyword">typename</span> <a class="link" href="../metafunctions/front.html" title="front"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">front</span></code></a><span class="special">&lt;</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="keyword">typename</span> <a href="../metafunctions/front.html" title="front"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">front</span></tt></a><span class="special">&lt;</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">front</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
</pre>
<a name="fusion.sequence.intrinsic.functions.front.parameters"></a><h6>
<a name="id587769"></a>
<a class="link" href="front.html#fusion.sequence.intrinsic.functions.front.parameters">Parameters</a>
<a name="id452384"></a>
<a href="front.html#fusion.sequence.intrinsic.functions.front.parameters">Parameters</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@ -56,76 +59,65 @@
<col>
</colgroup>
<thead><tr>
<th>
<p>
<th><p>
Parameter
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Requirement
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Description
</p>
</th>
</p></th>
</tr></thead>
<tbody><tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">seq</span></code>
</p>
</td>
<td>
<p>
Model of <a class="link" href="../../concepts/forward_sequence.html" title="Forward Sequence">Forward
<td><p>
<tt class="computeroutput"><span class="identifier">seq</span></tt>
</p></td>
<td><p>
Model of <a href="../../concepts/forward_sequence.html" title="Forward
Sequence">Forward
Sequence</a>
</p>
</td>
<td>
<p>
</p></td>
<td><p>
The sequence we wish to investigate.
</p>
</td>
</p></td>
</tr></tbody>
</table></div>
<a name="fusion.sequence.intrinsic.functions.front.expression_semantics"></a><h6>
<a name="id587859"></a>
<a class="link" href="front.html#fusion.sequence.intrinsic.functions.front.expression_semantics">Expression
<a name="id452497"></a>
<a href="front.html#fusion.sequence.intrinsic.functions.front.expression_semantics">Expression
Semantics</a>
</h6>
<pre class="programlisting"><span class="identifier">front</span><span class="special">(</span><span class="identifier">seq</span><span class="special">);</span>
</pre>
<p>
<span class="bold"><strong>Return type</strong></span>: Returns a reference to
the first element in the sequence <code class="computeroutput"><span class="identifier">seq</span></code>
if <code class="computeroutput"><span class="identifier">seq</span></code> is mutable and
<code class="computeroutput"><span class="identifier">e</span> <span class="special">=</span>
<span class="identifier">o</span></code>, where <code class="computeroutput"><span class="identifier">e</span></code>
<span class="bold"><b>Return type</b></span>: Returns a reference to
the first element in the sequence <tt class="computeroutput"><span class="identifier">seq</span></tt>
if <tt class="computeroutput"><span class="identifier">seq</span></tt> is mutable and
<tt class="computeroutput"><span class="identifier">e</span> <span class="special">=</span>
<span class="identifier">o</span></tt>, where <tt class="computeroutput"><span class="identifier">e</span></tt>
is the first element in the sequence, is a valid expression. Else, returns
a type convertable to the first element in the sequence.
</p>
<p>
<span class="bold"><strong>Precondition</strong></span>: <code class="computeroutput"><a class="link" href="empty.html" title="empty"><code class="computeroutput"><span class="identifier">empty</span></code></a><span class="special">(</span><span class="identifier">seq</span><span class="special">)</span> <span class="special">==</span> <span class="keyword">false</span></code>
<span class="bold"><b>Precondition</b></span>: <tt class="computeroutput"><a href="empty.html" title="empty"><tt class="computeroutput"><span class="identifier">empty</span></tt></a><span class="special">(</span><span class="identifier">seq</span><span class="special">)</span> <span class="special">==</span> <span class="keyword">false</span></tt>
</p>
<p>
<span class="bold"><strong>Semantics</strong></span>: Returns the first element
<span class="bold"><b>Semantics</b></span>: Returns the first element
in the sequence.
</p>
<a name="fusion.sequence.intrinsic.functions.front.header"></a><h6>
<a name="id587989"></a>
<a class="link" href="front.html#fusion.sequence.intrinsic.functions.front.header">Header</a>
<a name="id452690"></a>
<a href="front.html#fusion.sequence.intrinsic.functions.front.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">intrinsic</span><span class="special">/</span><span class="identifier">front</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">front</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
</pre>
<a name="fusion.sequence.intrinsic.functions.front.example"></a><h6>
<a name="id589334"></a>
<a class="link" href="front.html#fusion.sequence.intrinsic.functions.front.example">Example</a>
<a name="id452856"></a>
<a href="front.html#fusion.sequence.intrinsic.functions.front.example">Example</a>
</h6>
<pre class="programlisting"><a class="link" href="../../../container/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">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>
<pre class="programlisting"><a href="../../../container/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">v</span><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="number">2</span><span class="special">,</span> <span class="number">3</span><span class="special">);</span>
<span class="identifier">assert</span><span class="special">(</span><span class="identifier">front</span><span class="special">(</span><span class="identifier">v</span><span class="special">)</span> <span class="special">==</span> <span class="number">1</span><span class="special">);</span>
</pre>
</div>

View File

@ -3,10 +3,10 @@
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>has_key</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.0">
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
<link rel="home" href="../../../../index.html" title="Chapter<65>1.<2E>Fusion 2.0">
<link rel="up" href="../functions.html" title="Functions">
<link rel="prev" href="at_c.html" title="at_c">
<link rel="previous" href="at_c.html" title="at_c">
<link rel="next" href="at_key.html" title="at_key">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@ -22,31 +22,34 @@
<div class="spirit-nav">
<a accesskey="p" href="at_c.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="at_key.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="has_key">
<div class="titlepage"><div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.functions.has_key"></a><a class="link" href="has_key.html" title="has_key">has_key</a>
</h5></div></div></div>
<div class="section" lang="en">
<div class="titlepage">
<div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.functions.has_key"></a><a href="has_key.html" title="has_key">has_key</a>
</h5></div></div>
<div></div>
</div>
<a name="fusion.sequence.intrinsic.functions.has_key.description"></a><h6>
<a name="id593448"></a>
<a class="link" href="has_key.html#fusion.sequence.intrinsic.functions.has_key.description">Description</a>
<a name="id457172"></a>
<a href="has_key.html#fusion.sequence.intrinsic.functions.has_key.description">Description</a>
</h6>
<p>
Returns a type convertible to <code class="computeroutput"><span class="keyword">bool</span></code>
that evaluates to <code class="computeroutput"><span class="keyword">true</span></code> if
Returns a type convertible to <tt class="computeroutput"><span class="keyword">bool</span></tt>
that evaluates to <tt class="computeroutput"><span class="keyword">true</span></tt> if
the sequence contains an element associated with a Key, else, evaluates
to <code class="computeroutput"><span class="keyword">false</span></code>.
to <tt class="computeroutput"><span class="keyword">false</span></tt>.
</p>
<a name="fusion.sequence.intrinsic.functions.has_key.synopsis"></a><h6>
<a name="id593487"></a>
<a class="link" href="has_key.html#fusion.sequence.intrinsic.functions.has_key.synopsis">Synopsis</a>
<a name="id457238"></a>
<a href="has_key.html#fusion.sequence.intrinsic.functions.has_key.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Key</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
<span class="keyword">typename</span> <a class="link" href="../metafunctions/has_key.html" title="has_key"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">has_key</span></code></a><span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">Key</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="keyword">typename</span> <a href="../metafunctions/has_key.html" title="has_key"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">has_key</span></tt></a><span class="special">&lt;</span><span class="identifier">Sequence</span><span class="special">,</span> <span class="identifier">Key</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">has_key</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
</pre>
<a name="fusion.sequence.intrinsic.functions.has_key.parameters"></a><h6>
<a name="id593612"></a>
<a class="link" href="has_key.html#fusion.sequence.intrinsic.functions.has_key.parameters">Parameters</a>
<a name="id457419"></a>
<a href="has_key.html#fusion.sequence.intrinsic.functions.has_key.parameters">Parameters</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@ -55,86 +58,69 @@
<col>
</colgroup>
<thead><tr>
<th>
<p>
<th><p>
Parameter
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Requirement
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Description
</p>
</th>
</p></th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">seq</span></code>
</p>
</td>
<td>
<p>
Model of <a class="link" href="../../concepts/associative_sequence.html" title="Associative Sequence">Associative
<td><p>
<tt class="computeroutput"><span class="identifier">seq</span></tt>
</p></td>
<td><p>
Model of <a href="../../concepts/associative_sequence.html" title="Associative
Sequence">Associative
Sequence</a>
</p>
</td>
<td>
<p>
</p></td>
<td><p>
The sequence we wish to investigate.
</p>
</td>
</p></td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">Key</span></code>
</p>
</td>
<td>
<p>
<td><p>
<tt class="computeroutput"><span class="identifier">Key</span></tt>
</p></td>
<td><p>
Any type
</p>
</td>
<td>
<p>
</p></td>
<td><p>
The queried key.
</p>
</td>
</p></td>
</tr>
</tbody>
</table></div>
<a name="fusion.sequence.intrinsic.functions.has_key.expression_semantics"></a><h6>
<a name="id593730"></a>
<a class="link" href="has_key.html#fusion.sequence.intrinsic.functions.has_key.expression_semantics">Expression
<a name="id457572"></a>
<a href="has_key.html#fusion.sequence.intrinsic.functions.has_key.expression_semantics">Expression
Semantics</a>
</h6>
<pre class="programlisting"><span class="identifier">has_key</span><span class="special">&lt;</span><span class="identifier">Key</span><span class="special">&gt;(</span><span class="identifier">seq</span><span class="special">);</span>
</pre>
<p>
<span class="bold"><strong>Return type</strong></span>: Convertible to <code class="computeroutput"><span class="keyword">bool</span></code>.
<span class="bold"><b>Return type</b></span>: Convertible to <tt class="computeroutput"><span class="keyword">bool</span></tt>.
</p>
<p>
<span class="bold"><strong>Semantics</strong></span>: Evaluates to <code class="computeroutput"><span class="keyword">true</span></code> if the sequence contains an element
associated with Key, else, evaluates to <code class="computeroutput"><span class="keyword">false</span></code>.
<span class="bold"><b>Semantics</b></span>: Evaluates to <tt class="computeroutput"><span class="keyword">true</span></tt> if the sequence contains an element
associated with Key, else, evaluates to <tt class="computeroutput"><span class="keyword">false</span></tt>.
</p>
<a name="fusion.sequence.intrinsic.functions.has_key.header"></a><h6>
<a name="id593808"></a>
<a class="link" href="has_key.html#fusion.sequence.intrinsic.functions.has_key.header">Header</a>
<a name="id457693"></a>
<a href="has_key.html#fusion.sequence.intrinsic.functions.has_key.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">intrinsic</span><span class="special">/</span><span class="identifier">has_key</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">has_key</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
</pre>
<a name="fusion.sequence.intrinsic.functions.has_key.example"></a><h6>
<a name="id593924"></a>
<a class="link" href="has_key.html#fusion.sequence.intrinsic.functions.has_key.example">Example</a>
<a name="id457859"></a>
<a href="has_key.html#fusion.sequence.intrinsic.functions.has_key.example">Example</a>
</h6>
<pre class="programlisting"><a class="link" href="../../../container/set.html" title="set"><code class="computeroutput"><span class="identifier">set</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">,</span> <span class="keyword">bool</span><span class="special">&gt;</span> <span class="identifier">s</span><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="char">'x'</span><span class="special">,</span> <span class="keyword">true</span><span class="special">);</span>
<pre class="programlisting"><a href="../../../container/set.html" title="set"><tt class="computeroutput"><span class="identifier">set</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">,</span> <span class="keyword">bool</span><span class="special">&gt;</span> <span class="identifier">s</span><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="char">'x'</span><span class="special">,</span> <span class="keyword">true</span><span class="special">);</span>
<span class="identifier">assert</span><span class="special">(</span><span class="identifier">has_key</span><span class="special">&lt;</span><span class="keyword">char</span><span class="special">&gt;(</span><span class="identifier">s</span><span class="special">)</span> <span class="special">==</span> <span class="keyword">true</span><span class="special">);</span>
</pre>
</div>

View File

@ -3,10 +3,10 @@
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>size</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.0">
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
<link rel="home" href="../../../../index.html" title="Chapter<65>1.<2E>Fusion 2.0">
<link rel="up" href="../functions.html" title="Functions">
<link rel="prev" href="back.html" title="back">
<link rel="previous" href="back.html" title="back">
<link rel="next" href="at.html" title="at">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@ -22,29 +22,32 @@
<div class="spirit-nav">
<a accesskey="p" href="back.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="at.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="size">
<div class="titlepage"><div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.functions.size"></a><a class="link" href="size.html" title="size">size</a>
</h5></div></div></div>
<div class="section" lang="en">
<div class="titlepage">
<div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.functions.size"></a><a href="size.html" title="size">size</a>
</h5></div></div>
<div></div>
</div>
<a name="fusion.sequence.intrinsic.functions.size.description"></a><h6>
<a name="id590143"></a>
<a class="link" href="size.html#fusion.sequence.intrinsic.functions.size.description">Description</a>
<a name="id454017"></a>
<a href="size.html#fusion.sequence.intrinsic.functions.size.description">Description</a>
</h6>
<p>
Returns a type convertible to <code class="computeroutput"><span class="keyword">int</span></code>
Returns a type convertible to <tt class="computeroutput"><span class="keyword">int</span></tt>
that evaluates the number of elements in the sequence.
</p>
<a name="fusion.sequence.intrinsic.functions.size.synopsis"></a><h6>
<a name="id590167"></a>
<a class="link" href="size.html#fusion.sequence.intrinsic.functions.size.synopsis">Synopsis</a>
<a name="id454060"></a>
<a href="size.html#fusion.sequence.intrinsic.functions.size.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
<span class="keyword">typename</span> <a class="link" href="../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">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="keyword">typename</span> <a href="../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">&lt;</span><span class="identifier">Sequence</span><span class="special">&gt;::</span><span class="identifier">type</span>
<span class="identifier">size</span><span class="special">(</span><span class="identifier">Sequence</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">seq</span><span class="special">);</span>
</pre>
<a name="fusion.sequence.intrinsic.functions.size.parameters"></a><h6>
<a name="id590270"></a>
<a class="link" href="size.html#fusion.sequence.intrinsic.functions.size.parameters">Parameters</a>
<a name="id454212"></a>
<a href="size.html#fusion.sequence.intrinsic.functions.size.parameters">Parameters</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@ -53,67 +56,56 @@
<col>
</colgroup>
<thead><tr>
<th>
<p>
<th><p>
Parameter
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Requirement
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Description
</p>
</th>
</p></th>
</tr></thead>
<tbody><tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">seq</span></code>
</p>
</td>
<td>
<p>
Model of <a class="link" href="../../concepts/forward_sequence.html" title="Forward Sequence">Forward
<td><p>
<tt class="computeroutput"><span class="identifier">seq</span></tt>
</p></td>
<td><p>
Model of <a href="../../concepts/forward_sequence.html" title="Forward
Sequence">Forward
Sequence</a>
</p>
</td>
<td>
<p>
</p></td>
<td><p>
The sequence we wish to investigate.
</p>
</td>
</p></td>
</tr></tbody>
</table></div>
<a name="fusion.sequence.intrinsic.functions.size.expression_semantics"></a><h6>
<a name="id590360"></a>
<a class="link" href="size.html#fusion.sequence.intrinsic.functions.size.expression_semantics">Expression
<a name="id454326"></a>
<a href="size.html#fusion.sequence.intrinsic.functions.size.expression_semantics">Expression
Semantics</a>
</h6>
<pre class="programlisting"><span class="identifier">size</span><span class="special">(</span><span class="identifier">seq</span><span class="special">);</span>
</pre>
<p>
<span class="bold"><strong>Return type</strong></span>: Convertible to <code class="computeroutput"><span class="keyword">int</span></code>.
<span class="bold"><b>Return type</b></span>: Convertible to <tt class="computeroutput"><span class="keyword">int</span></tt>.
</p>
<p>
<span class="bold"><strong>Semantics</strong></span>: Returns the number of elements
<span class="bold"><b>Semantics</b></span>: Returns the number of elements
in the sequence.
</p>
<a name="fusion.sequence.intrinsic.functions.size.header"></a><h6>
<a name="id590419"></a>
<a class="link" href="size.html#fusion.sequence.intrinsic.functions.size.header">Header</a>
<a name="id454412"></a>
<a href="size.html#fusion.sequence.intrinsic.functions.size.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">intrinsic</span><span class="special">/</span><span class="identifier">size</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">size</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
</pre>
<a name="fusion.sequence.intrinsic.functions.size.example"></a><h6>
<a name="id590534"></a>
<a class="link" href="size.html#fusion.sequence.intrinsic.functions.size.example">Example</a>
<a name="id454577"></a>
<a href="size.html#fusion.sequence.intrinsic.functions.size.example">Example</a>
</h6>
<pre class="programlisting"><a class="link" href="../../../container/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">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>
<pre class="programlisting"><a href="../../../container/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">v</span><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="number">2</span><span class="special">,</span> <span class="number">3</span><span class="special">);</span>
<span class="identifier">assert</span><span class="special">(</span><span class="identifier">size</span><span class="special">(</span><span class="identifier">v</span><span class="special">)</span> <span class="special">==</span> <span class="number">3</span><span class="special">);</span>
</pre>
</div>

View File

@ -3,10 +3,10 @@
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>swap</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.0">
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
<link rel="home" href="../../../../index.html" title="Chapter<65>1.<2E>Fusion 2.0">
<link rel="up" href="../functions.html" title="Functions">
<link rel="prev" href="at_key.html" title="at_key">
<link rel="previous" href="at_key.html" title="at_key">
<link rel="next" href="../metafunctions.html" title="Metafunctions">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@ -22,27 +22,30 @@
<div class="spirit-nav">
<a accesskey="p" href="at_key.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../functions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="swap">
<div class="titlepage"><div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.functions.swap"></a><a class="link" href="swap.html" title="swap">swap</a>
</h5></div></div></div>
<div class="section" lang="en">
<div class="titlepage">
<div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.functions.swap"></a><a href="swap.html" title="swap">swap</a>
</h5></div></div>
<div></div>
</div>
<a name="fusion.sequence.intrinsic.functions.swap.description"></a><h6>
<a name="id596128"></a>
<a class="link" href="swap.html#fusion.sequence.intrinsic.functions.swap.description">Description</a>
<a name="id459147"></a>
<a href="swap.html#fusion.sequence.intrinsic.functions.swap.description">Description</a>
</h6>
<p>
Performs an element by element swap of the elements in 2 sequences.
</p>
<a name="fusion.sequence.intrinsic.functions.swap.synopsis"></a><h6>
<a name="id596145"></a>
<a class="link" href="swap.html#fusion.sequence.intrinsic.functions.swap.synopsis">Synopsis</a>
<a name="id459177"></a>
<a href="swap.html#fusion.sequence.intrinsic.functions.swap.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Seq1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Seq2</span><span class="special">&gt;</span>
<span class="keyword">void</span> <span class="identifier">swap</span><span class="special">(</span><span class="identifier">Seq1</span><span class="special">&amp;</span> <span class="identifier">seq1</span><span class="special">,</span> <span class="identifier">Seq2</span><span class="special">&amp;</span> <span class="identifier">seq2</span><span class="special">);</span>
</pre>
<a name="fusion.sequence.intrinsic.functions.swap.parameters"></a><h6>
<a name="id596241"></a>
<a class="link" href="swap.html#fusion.sequence.intrinsic.functions.swap.parameters">Parameters</a>
<a name="id459316"></a>
<a href="swap.html#fusion.sequence.intrinsic.functions.swap.parameters">Parameters</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@ -51,68 +54,57 @@
<col>
</colgroup>
<thead><tr>
<th>
<p>
<th><p>
Parameters
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Requirement
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Description
</p>
</th>
</p></th>
</tr></thead>
<tbody><tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">seq1</span></code>, <code class="computeroutput"><span class="identifier">seq2</span></code>
</p>
</td>
<td>
<p>
Models of <a class="link" href="../../concepts/forward_sequence.html" title="Forward Sequence">Forward
<td><p>
<tt class="computeroutput"><span class="identifier">seq1</span></tt>, <tt class="computeroutput"><span class="identifier">seq2</span></tt>
</p></td>
<td><p>
Models of <a href="../../concepts/forward_sequence.html" title="Forward
Sequence">Forward
Sequence</a>
</p>
</td>
<td>
<p>
</p></td>
<td><p>
The sequences whos elements we wish to swap.
</p>
</td>
</p></td>
</tr></tbody>
</table></div>
<a name="fusion.sequence.intrinsic.functions.swap.expression_semantics"></a><h6>
<a name="id596338"></a>
<a class="link" href="swap.html#fusion.sequence.intrinsic.functions.swap.expression_semantics">Expression
<a name="id459442"></a>
<a href="swap.html#fusion.sequence.intrinsic.functions.swap.expression_semantics">Expression
Semantics</a>
</h6>
<pre class="programlisting"><span class="identifier">swap</span><span class="special">(</span><span class="identifier">seq1</span><span class="special">,</span> <span class="identifier">seq2</span><span class="special">);</span>
</pre>
<p>
<span class="bold"><strong>Return type</strong></span>: <code class="computeroutput"><span class="keyword">void</span></code>
<span class="bold"><b>Return type</b></span>: <tt class="computeroutput"><span class="keyword">void</span></tt>
</p>
<p>
<span class="bold"><strong>Precondition</strong></span>: <code class="computeroutput"><a class="link" href="size.html" title="size"><code class="computeroutput"><span class="identifier">size</span></code></a><span class="special">(</span><span class="identifier">seq1</span><span class="special">)</span> <span class="special">==</span> <a class="link" href="size.html" title="size"><code class="computeroutput"><span class="identifier">size</span></code></a><span class="special">(</span><span class="identifier">seq2</span><span class="special">)</span></code>
<span class="bold"><b>Precondition</b></span>: <tt class="computeroutput"><a href="size.html" title="size"><tt class="computeroutput"><span class="identifier">size</span></tt></a><span class="special">(</span><span class="identifier">seq1</span><span class="special">)</span> <span class="special">==</span> <a href="size.html" title="size"><tt class="computeroutput"><span class="identifier">size</span></tt></a><span class="special">(</span><span class="identifier">seq2</span><span class="special">)</span></tt>
</p>
<p>
<span class="bold"><strong>Semantics</strong></span>: Calls <code class="computeroutput"><span class="identifier">swap</span><span class="special">(</span><span class="identifier">a1</span><span class="special">,</span> <span class="identifier">b1</span><span class="special">)</span></code> for corresponding elements in <code class="computeroutput"><span class="identifier">seq1</span></code> and <code class="computeroutput"><span class="identifier">seq2</span></code>.
<span class="bold"><b>Semantics</b></span>: Calls <tt class="computeroutput"><span class="identifier">swap</span><span class="special">(</span><span class="identifier">a1</span><span class="special">,</span> <span class="identifier">b1</span><span class="special">)</span></tt> for corresponding elements in <tt class="computeroutput"><span class="identifier">seq1</span></tt> and <tt class="computeroutput"><span class="identifier">seq2</span></tt>.
</p>
<p>
/sequence/intrinsic/swap.hpp&gt;
</p>
<a name="fusion.sequence.intrinsic.functions.swap.example"></a><h6>
<a name="id596506"></a>
<a class="link" href="swap.html#fusion.sequence.intrinsic.functions.swap.example">Example</a>
<a name="id459689"></a>
<a href="swap.html#fusion.sequence.intrinsic.functions.swap.example">Example</a>
</h6>
<pre class="programlisting"><a class="link" href="../../../container/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">&gt;</span> <span class="identifier">v1</span><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="string">"hello"</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="string">"world"</span><span class="special">);</span>
<pre class="programlisting"><a href="../../../container/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&gt;</span> <span class="identifier">v1</span><span class="special">(</span><span class="number">1</span><span class="special">,</span> <span class="string">"hello"</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="string">"world"</span><span class="special">);</span>
<span class="identifier">swap</span><span class="special">(</span><span class="identifier">v1</span><span class="special">,</span> <span class="identifier">v2</span><span class="special">);</span>
<span class="identifier">assert</span><span class="special">(</span><span class="identifier">v1</span> <span class="special">==</span> <a class="link" href="../../../container/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="string">"world"</span><span class="special">));</span>
<span class="identifier">assert</span><span class="special">(</span><span class="identifier">v2</span> <span class="special">==</span> <a class="link" href="../../../container/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="string">"hello"</span><span class="special">));</span>
<span class="identifier">assert</span><span class="special">(</span><span class="identifier">v1</span> <span class="special">==</span> <a href="../../../container/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="string">"world"</span><span class="special">));</span>
<span class="identifier">assert</span><span class="special">(</span><span class="identifier">v2</span> <span class="special">==</span> <a href="../../../container/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="string">"hello"</span><span class="special">));</span>
</pre>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>

View File

@ -3,10 +3,10 @@
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Metafunctions</title>
<link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.0">
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
<link rel="home" href="../../../index.html" title="Chapter<65>1.<2E>Fusion 2.0">
<link rel="up" href="../intrinsic.html" title="Intrinsic">
<link rel="prev" href="functions/swap.html" title="swap">
<link rel="previous" href="functions/swap.html" title="swap">
<link rel="next" href="metafunctions/begin.html" title="begin">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@ -22,10 +22,13 @@
<div class="spirit-nav">
<a accesskey="p" href="functions/swap.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../intrinsic.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="metafunctions/begin.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Metafunctions">
<div class="titlepage"><div><div><h4 class="title">
<a name="fusion.sequence.intrinsic.metafunctions"></a><a class="link" href="metafunctions.html" title="Metafunctions">Metafunctions</a>
</h4></div></div></div>
<div class="section" lang="en">
<div class="titlepage">
<div><div><h4 class="title">
<a name="fusion.sequence.intrinsic.metafunctions"></a><a href="metafunctions.html" title="Metafunctions">Metafunctions</a>
</h4></div></div>
<div></div>
</div>
<div class="toc"><dl>
<dt><span class="section"><a href="metafunctions/begin.html">begin</a></span></dt>
<dt><span class="section"><a href="metafunctions/end.html">end</a></span></dt>

View File

@ -3,10 +3,10 @@
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>at</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.0">
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
<link rel="home" href="../../../../index.html" title="Chapter<65>1.<2E>Fusion 2.0">
<link rel="up" href="../metafunctions.html" title="Metafunctions">
<link rel="prev" href="size.html" title="size">
<link rel="previous" href="size.html" title="size">
<link rel="next" href="at_c.html" title="at_c">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@ -22,22 +22,25 @@
<div class="spirit-nav">
<a accesskey="p" href="size.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="at_c.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="at">
<div class="titlepage"><div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.metafunctions.at"></a><a class="link" href="at.html" title="at">at</a>
</h5></div></div></div>
<div class="section" lang="en">
<div class="titlepage">
<div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.metafunctions.at"></a><a href="at.html" title="at">at</a>
</h5></div></div>
<div></div>
</div>
<a name="fusion.sequence.intrinsic.metafunctions.at.description"></a><h6>
<a name="id599417"></a>
<a class="link" href="at.html#fusion.sequence.intrinsic.metafunctions.at.description">Description</a>
<a name="id463892"></a>
<a href="at.html#fusion.sequence.intrinsic.metafunctions.at.description">Description</a>
</h6>
<p>
Returns the result type of <a class="link" href="../functions/at.html" title="at"><code class="computeroutput"><span class="identifier">at</span></code></a>
<sup>[<a name="id599438" href="#ftn.id599438" class="footnote">6</a>]</sup>
Returns the result type of <a href="../functions/at.html" title="at"><tt class="computeroutput"><span class="identifier">at</span></tt></a>
<sup>[<a name="id463929" href="#ftn.id463929">6</a>]</sup>
.
</p>
<a name="fusion.sequence.intrinsic.metafunctions.at.synopsis"></a><h6>
<a name="id599508"></a>
<a class="link" href="at.html#fusion.sequence.intrinsic.metafunctions.at.synopsis">Synopsis</a>
<a name="id464047"></a>
<a href="at.html#fusion.sequence.intrinsic.metafunctions.at.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span>
<span class="keyword">typename</span> <span class="identifier">Seq</span><span class="special">,</span>
@ -48,101 +51,84 @@
<span class="special">};</span>
</pre>
<div class="table">
<a name="id599592"></a><p class="title"><b>Table<EFBFBD>1.25.<2E>Parameters</b></p>
<div class="table-contents"><table class="table" summary="Parameters">
<a name="id464162"></a><p class="title"><b>Table<EFBFBD>1.25.<2E>Parameters</b></p>
<table class="table" summary="Parameters">
<colgroup>
<col>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
<th><p>
Parameter
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Requirement
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Description
</p>
</th>
</p></th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">Seq</span></code>
</p>
</td>
<td>
<p>
A model of <a class="link" href="../../concepts/forward_sequence.html" title="Forward Sequence">Forward
<td><p>
<tt class="computeroutput"><span class="identifier">Seq</span></tt>
</p></td>
<td><p>
A model of <a href="../../concepts/forward_sequence.html" title="Forward
Sequence">Forward
Sequence</a>
</p>
</td>
<td>
<p>
</p></td>
<td><p>
Argument sequence
</p>
</td>
</p></td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">N</span></code>
</p>
</td>
<td>
<p>
<td><p>
<tt class="computeroutput"><span class="identifier">N</span></tt>
</p></td>
<td><p>
An <a href="http://www.boost.org/libs/mpl/doc/refmanual/integral-constant.html" target="_top">MPL
Integral Constant</a>
</p>
</td>
<td>
<p>
</p></td>
<td><p>
Index of element
</p>
</td>
</p></td>
</tr>
</tbody>
</table></div>
</table>
</div>
<br class="table-break"><a name="fusion.sequence.intrinsic.metafunctions.at.expression_semantics"></a><h6>
<a name="id599711"></a>
<a class="link" href="at.html#fusion.sequence.intrinsic.metafunctions.at.expression_semantics">Expression
<a name="fusion.sequence.intrinsic.metafunctions.at.expression_semantics"></a><h6>
<a name="id464305"></a>
<a href="at.html#fusion.sequence.intrinsic.metafunctions.at.expression_semantics">Expression
Semantics</a>
</h6>
<pre class="programlisting"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at</span><span class="special">&lt;</span><span class="identifier">Seq</span><span class="special">,</span> <span class="identifier">N</span><span class="special">&gt;::</span><span class="identifier">type</span>
</pre>
<p>
<span class="bold"><strong>Return type</strong></span>: Any type.
<span class="bold"><b>Return type</b></span>: Any type.
</p>
<p>
<span class="bold"><strong>Semantics</strong></span>: Returns the result type of
using <a class="link" href="../functions/at.html" title="at"><code class="computeroutput"><span class="identifier">at</span></code></a> to access the <code class="computeroutput"><span class="identifier">N</span></code>th element of <code class="computeroutput"><span class="identifier">Seq</span></code>.
<span class="bold"><b>Semantics</b></span>: Returns the result type of
using <a href="../functions/at.html" title="at"><tt class="computeroutput"><span class="identifier">at</span></tt></a> to access the <tt class="computeroutput"><span class="identifier">N</span></tt>th element of <tt class="computeroutput"><span class="identifier">Seq</span></tt>.
</p>
<p>
/sequence/intrinsic/at.hpp&gt;
</p>
<a name="fusion.sequence.intrinsic.metafunctions.at.example"></a><h6>
<a name="id599809"></a>
<a class="link" href="at.html#fusion.sequence.intrinsic.metafunctions.at.example">Example</a>
<a name="id464452"></a>
<a href="at.html#fusion.sequence.intrinsic.metafunctions.at.example">Example</a>
</h6>
<pre class="programlisting"><span class="keyword">typedef</span> <a class="link" href="../../../container/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">,</span><span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">;</span>
<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span><a class="link" href="at.html" title="at"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at</span></code></a><span class="special">&lt;</span><span class="identifier">vec</span><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">int_</span><span class="special">&lt;</span><span class="number">1</span><span class="special">&gt;</span> <span class="special">&gt;::</span><span class="identifier">type</span><span class="special">,</span> <span class="keyword">float</span><span class="special">&amp;&gt;));</span>
<pre class="programlisting"><span class="keyword">typedef</span> <a href="../../../container/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">float</span><span class="special">,</span><span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">;</span>
<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span><a href="at.html" title="at"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at</span></tt></a><span class="special">&lt;</span><span class="identifier">vec</span><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">int_</span><span class="special">&lt;</span><span class="number">1</span><span class="special">&gt;</span> <span class="special">&gt;::</span><span class="identifier">type</span><span class="special">,</span> <span class="keyword">float</span><span class="special">&amp;&gt;));</span>
</pre>
<div class="footnotes">
<br><hr width="100" align="left">
<div class="footnote"><p><sup>[<a name="ftn.id599438" href="#id599438" class="para">6</a>] </sup>
<a class="link" href="at.html" title="at"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at</span></code></a> reflects the actual return
type of the function <a class="link" href="../functions/at.html" title="at"><code class="computeroutput"><span class="identifier">at</span></code></a>. <a class="link" href="../../../sequence.html" title="Sequence">Sequence</a>(s)
typically return references to its elements via the <a class="link" href="../functions/at.html" title="at"><code class="computeroutput"><span class="identifier">at</span></code></a> function. If you want
to get the actual element type, use <a class="link" href="value_at.html" title="value_at"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">value_at</span></code></a>
<div class="footnote"><p><sup>[<a name="ftn.id463929" href="#id463929">6</a>] </sup>
<a href="at.html" title="at"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at</span></tt></a> reflects the actual return
type of the function <a href="../functions/at.html" title="at"><tt class="computeroutput"><span class="identifier">at</span></tt></a>. <a href="../../../sequence.html" title="Sequence">Sequence</a>(s)
typically return references to its elements via the <a href="../functions/at.html" title="at"><tt class="computeroutput"><span class="identifier">at</span></tt></a> function. If you want
to get the actual element type, use <a href="value_at.html" title="value_at"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">value_at</span></tt></a>
</p></div>
</div>
</div>

View File

@ -3,10 +3,10 @@
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>at_c</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.0">
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
<link rel="home" href="../../../../index.html" title="Chapter<65>1.<2E>Fusion 2.0">
<link rel="up" href="../metafunctions.html" title="Metafunctions">
<link rel="prev" href="at.html" title="at">
<link rel="previous" href="at.html" title="at">
<link rel="next" href="value_at.html" title="value_at">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@ -22,22 +22,25 @@
<div class="spirit-nav">
<a accesskey="p" href="at.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="value_at.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="at_c">
<div class="titlepage"><div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.metafunctions.at_c"></a><a class="link" href="at_c.html" title="at_c">at_c</a>
</h5></div></div></div>
<div class="section" lang="en">
<div class="titlepage">
<div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.metafunctions.at_c"></a><a href="at_c.html" title="at_c">at_c</a>
</h5></div></div>
<div></div>
</div>
<a name="fusion.sequence.intrinsic.metafunctions.at_c.description"></a><h6>
<a name="id599987"></a>
<a class="link" href="at_c.html#fusion.sequence.intrinsic.metafunctions.at_c.description">Description</a>
<a name="id464709"></a>
<a href="at_c.html#fusion.sequence.intrinsic.metafunctions.at_c.description">Description</a>
</h6>
<p>
Returns the result type of <a class="link" href="../functions/at_c.html" title="at_c"><code class="computeroutput"><span class="identifier">at_c</span></code></a>
<sup>[<a name="id600011" href="#ftn.id600011" class="footnote">7</a>]</sup>
Returns the result type of <a href="../functions/at_c.html" title="at_c"><tt class="computeroutput"><span class="identifier">at_c</span></tt></a>
<sup>[<a name="id464747" href="#ftn.id464747">7</a>]</sup>
.
</p>
<a name="fusion.sequence.intrinsic.metafunctions.at_c.synopsis"></a><h6>
<a name="id600080"></a>
<a class="link" href="at_c.html#fusion.sequence.intrinsic.metafunctions.at_c.synopsis">Synopsis</a>
<a name="id464868"></a>
<a href="at_c.html#fusion.sequence.intrinsic.metafunctions.at_c.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span>
<span class="keyword">typename</span> <span class="identifier">Seq</span><span class="special">,</span>
@ -48,100 +51,83 @@
<span class="special">};</span>
</pre>
<div class="table">
<a name="id600164"></a><p class="title"><b>Table<EFBFBD>1.26.<2E>Parameters</b></p>
<div class="table-contents"><table class="table" summary="Parameters">
<a name="id464983"></a><p class="title"><b>Table<EFBFBD>1.26.<2E>Parameters</b></p>
<table class="table" summary="Parameters">
<colgroup>
<col>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
<th><p>
Parameter
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Requirement
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Description
</p>
</th>
</p></th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">Seq</span></code>
</p>
</td>
<td>
<p>
A model of <a class="link" href="../../concepts/forward_sequence.html" title="Forward Sequence">Forward
<td><p>
<tt class="computeroutput"><span class="identifier">Seq</span></tt>
</p></td>
<td><p>
A model of <a href="../../concepts/forward_sequence.html" title="Forward
Sequence">Forward
Sequence</a>
</p>
</td>
<td>
<p>
</p></td>
<td><p>
Argument sequence
</p>
</td>
</p></td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">M</span></code>
</p>
</td>
<td>
<p>
<td><p>
<tt class="computeroutput"><span class="identifier">M</span></tt>
</p></td>
<td><p>
Positive integer index
</p>
</td>
<td>
<p>
</p></td>
<td><p>
Index of element
</p>
</td>
</p></td>
</tr>
</tbody>
</table></div>
</table>
</div>
<br class="table-break"><a name="fusion.sequence.intrinsic.metafunctions.at_c.expression_semantics"></a><h6>
<a name="id600277"></a>
<a class="link" href="at_c.html#fusion.sequence.intrinsic.metafunctions.at_c.expression_semantics">Expression
<a name="fusion.sequence.intrinsic.metafunctions.at_c.expression_semantics"></a><h6>
<a name="id465121"></a>
<a href="at_c.html#fusion.sequence.intrinsic.metafunctions.at_c.expression_semantics">Expression
Semantics</a>
</h6>
<pre class="programlisting"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at_c</span><span class="special">&lt;</span><span class="identifier">Seq</span><span class="special">,</span> <span class="identifier">M</span><span class="special">&gt;::</span><span class="identifier">type</span>
</pre>
<p>
<span class="bold"><strong>Return type</strong></span>: Any type
<span class="bold"><b>Return type</b></span>: Any type
</p>
<p>
<span class="bold"><strong>Semantics</strong></span>: Returns the result type of
using <a class="link" href="../functions/at_c.html" title="at_c"><code class="computeroutput"><span class="identifier">at_c</span></code></a> to access the <code class="computeroutput"><span class="identifier">M</span></code>th element of <code class="computeroutput"><span class="identifier">Seq</span></code>.
<span class="bold"><b>Semantics</b></span>: Returns the result type of
using <a href="../functions/at_c.html" title="at_c"><tt class="computeroutput"><span class="identifier">at_c</span></tt></a> to access the <tt class="computeroutput"><span class="identifier">M</span></tt>th element of <tt class="computeroutput"><span class="identifier">Seq</span></tt>.
</p>
<p>
/sequence/intrinsic/at.hpp&gt;
</p>
<a name="fusion.sequence.intrinsic.metafunctions.at_c.example"></a><h6>
<a name="id600373"></a>
<a class="link" href="at_c.html#fusion.sequence.intrinsic.metafunctions.at_c.example">Example</a>
<a name="id465270"></a>
<a href="at_c.html#fusion.sequence.intrinsic.metafunctions.at_c.example">Example</a>
</h6>
<pre class="programlisting"><span class="keyword">typedef</span> <a class="link" href="../../../container/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">,</span><span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">;</span>
<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span><a class="link" href="at_c.html" title="at_c"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at_c</span></code></a><span class="special">&lt;</span><span class="identifier">vec</span><span class="special">,</span> <span class="number">1</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">,</span> <span class="keyword">float</span><span class="special">&amp;&gt;));</span>
<pre class="programlisting"><span class="keyword">typedef</span> <a href="../../../container/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">float</span><span class="special">,</span><span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">;</span>
<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span><a href="at_c.html" title="at_c"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at_c</span></tt></a><span class="special">&lt;</span><span class="identifier">vec</span><span class="special">,</span> <span class="number">1</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">,</span> <span class="keyword">float</span><span class="special">&amp;&gt;));</span>
</pre>
<div class="footnotes">
<br><hr width="100" align="left">
<div class="footnote"><p><sup>[<a name="ftn.id600011" href="#id600011" class="para">7</a>] </sup>
<a class="link" href="at_c.html" title="at_c"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at_c</span></code></a> reflects the actual
return type of the function <a class="link" href="../functions/at_c.html" title="at_c"><code class="computeroutput"><span class="identifier">at_c</span></code></a>. <a class="link" href="../../../sequence.html" title="Sequence">Sequence</a>(s)
typically return references to its elements via the <a class="link" href="../functions/at_c.html" title="at_c"><code class="computeroutput"><span class="identifier">at_c</span></code></a> function. If you want
to get the actual element type, use <a class="link" href="value_at_c.html" title="value_at_c"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">value_at_c</span></code></a>
<div class="footnote"><p><sup>[<a name="ftn.id464747" href="#id464747">7</a>] </sup>
<a href="at_c.html" title="at_c"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at_c</span></tt></a> reflects the actual
return type of the function <a href="../functions/at_c.html" title="at_c"><tt class="computeroutput"><span class="identifier">at_c</span></tt></a>. <a href="../../../sequence.html" title="Sequence">Sequence</a>(s)
typically return references to its elements via the <a href="../functions/at_c.html" title="at_c"><tt class="computeroutput"><span class="identifier">at_c</span></tt></a> function. If you want
to get the actual element type, use <a href="value_at_c.html" title="value_at_c"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">value_at_c</span></tt></a>
</p></div>
</div>
</div>

View File

@ -3,10 +3,10 @@
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>at_key</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.0">
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
<link rel="home" href="../../../../index.html" title="Chapter<65>1.<2E>Fusion 2.0">
<link rel="up" href="../metafunctions.html" title="Metafunctions">
<link rel="prev" href="has_key.html" title="has_key">
<link rel="previous" href="has_key.html" title="has_key">
<link rel="next" href="value_at_key.html" title="value_at_key">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@ -22,22 +22,25 @@
<div class="spirit-nav">
<a accesskey="p" href="has_key.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="value_at_key.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="at_key">
<div class="titlepage"><div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.metafunctions.at_key"></a><a class="link" href="at_key.html" title="at_key">at_key</a>
</h5></div></div></div>
<div class="section" lang="en">
<div class="titlepage">
<div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.metafunctions.at_key"></a><a href="at_key.html" title="at_key">at_key</a>
</h5></div></div>
<div></div>
</div>
<a name="fusion.sequence.intrinsic.metafunctions.at_key.description"></a><h6>
<a name="id604414"></a>
<a class="link" href="at_key.html#fusion.sequence.intrinsic.metafunctions.at_key.description">Description</a>
<a name="id467644"></a>
<a href="at_key.html#fusion.sequence.intrinsic.metafunctions.at_key.description">Description</a>
</h6>
<p>
Returns the result type of <a class="link" href="../functions/at_key.html" title="at_key"><code class="computeroutput"><span class="identifier">at_key</span></code></a>
<sup>[<a name="id604438" href="#ftn.id604438" class="footnote">8</a>]</sup>
Returns the result type of <a href="../functions/at_key.html" title="at_key"><tt class="computeroutput"><span class="identifier">at_key</span></tt></a>
<sup>[<a name="id467682" href="#ftn.id467682">8</a>]</sup>
.
</p>
<a name="fusion.sequence.intrinsic.metafunctions.at_key.synopsis"></a><h6>
<a name="id604507"></a>
<a class="link" href="at_key.html#fusion.sequence.intrinsic.metafunctions.at_key.synopsis">Synopsis</a>
<a name="id467800"></a>
<a href="at_key.html#fusion.sequence.intrinsic.metafunctions.at_key.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span>
<span class="keyword">typename</span> <span class="identifier">Seq</span><span class="special">,</span>
@ -48,102 +51,85 @@
<span class="special">};</span>
</pre>
<div class="table">
<a name="id604591"></a><p class="title"><b>Table<EFBFBD>1.30.<2E>Parameters</b></p>
<div class="table-contents"><table class="table" summary="Parameters">
<a name="id467915"></a><p class="title"><b>Table<EFBFBD>1.30.<2E>Parameters</b></p>
<table class="table" summary="Parameters">
<colgroup>
<col>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
<th><p>
Parameter
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Requirement
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Description
</p>
</th>
</p></th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">Seq</span></code>
</p>
</td>
<td>
<p>
A model of <a class="link" href="../../concepts/forward_sequence.html" title="Forward Sequence">Forward
<td><p>
<tt class="computeroutput"><span class="identifier">Seq</span></tt>
</p></td>
<td><p>
A model of <a href="../../concepts/forward_sequence.html" title="Forward
Sequence">Forward
Sequence</a>
</p>
</td>
<td>
<p>
</p></td>
<td><p>
Argument sequence
</p>
</td>
</p></td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">Key</span></code>
</p>
</td>
<td>
<p>
<td><p>
<tt class="computeroutput"><span class="identifier">Key</span></tt>
</p></td>
<td><p>
Any type
</p>
</td>
<td>
<p>
</p></td>
<td><p>
Key type
</p>
</td>
</p></td>
</tr>
</tbody>
</table></div>
</table>
</div>
<br class="table-break"><a name="fusion.sequence.intrinsic.metafunctions.at_key.expression_semantics"></a><h6>
<a name="id604703"></a>
<a class="link" href="at_key.html#fusion.sequence.intrinsic.metafunctions.at_key.expression_semantics">Expression
<a name="fusion.sequence.intrinsic.metafunctions.at_key.expression_semantics"></a><h6>
<a name="id468053"></a>
<a href="at_key.html#fusion.sequence.intrinsic.metafunctions.at_key.expression_semantics">Expression
Semantics</a>
</h6>
<pre class="programlisting"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at_key</span><span class="special">&lt;</span><span class="identifier">Seq</span><span class="special">,</span> <span class="identifier">Key</span><span class="special">&gt;::</span><span class="identifier">type</span>
</pre>
<p>
<span class="bold"><strong>Return type</strong></span>: Any type.
<span class="bold"><b>Return type</b></span>: Any type.
</p>
<p>
<span class="bold"><strong>Semantics</strong></span>: Returns the result of using
<a class="link" href="../functions/at_key.html" title="at_key"><code class="computeroutput"><span class="identifier">at_key</span></code></a> to access the element
with key type <code class="computeroutput"><span class="identifier">Key</span></code> in
<code class="computeroutput"><span class="identifier">Seq</span></code>.
<span class="bold"><b>Semantics</b></span>: Returns the result of using
<a href="../functions/at_key.html" title="at_key"><tt class="computeroutput"><span class="identifier">at_key</span></tt></a> to access the element
with key type <tt class="computeroutput"><span class="identifier">Key</span></tt> in
<tt class="computeroutput"><span class="identifier">Seq</span></tt>.
</p>
<p>
/sequence/intrinsic/at_key.hpp&gt;
</p>
<a name="fusion.sequence.intrinsic.metafunctions.at_key.example"></a><h6>
<a name="id604799"></a>
<a class="link" href="at_key.html#fusion.sequence.intrinsic.metafunctions.at_key.example">Example</a>
<a name="id468201"></a>
<a href="at_key.html#fusion.sequence.intrinsic.metafunctions.at_key.example">Example</a>
</h6>
<pre class="programlisting"><span class="keyword">typedef</span> <a class="link" href="../../../container/map.html" title="map"><code class="computeroutput"><span class="identifier">map</span></code></a><span class="special">&lt;</span><a class="link" href="../../../support/pair.html" title="pair"><code class="computeroutput"><span class="identifier">pair</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> <a class="link" href="../../../support/pair.html" title="pair"><code class="computeroutput"><span class="identifier">pair</span></code></a><span class="special">&lt;</span><span class="keyword">char</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&gt;,</span> <a class="link" href="../../../support/pair.html" title="pair"><code class="computeroutput"><span class="identifier">pair</span></code></a><span class="special">&lt;</span><span class="keyword">double</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&gt;</span> <span class="special">&gt;</span> <span class="identifier">mymap</span><span class="special">;</span>
<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span><a class="link" href="at_key.html" title="at_key"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at_key</span></code></a><span class="special">&lt;</span><span class="identifier">mymap</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&amp;&gt;));</span>
<pre class="programlisting"><span class="keyword">typedef</span> <a href="../../../container/map.html" title="map"><tt class="computeroutput"><span class="identifier">map</span></tt></a><span class="special">&lt;</span><a href="../../../support/pair.html" title="pair"><tt class="computeroutput"><span class="identifier">pair</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> <a href="../../../support/pair.html" title="pair"><tt class="computeroutput"><span class="identifier">pair</span></tt></a><span class="special">&lt;</span><span class="keyword">char</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&gt;,</span> <a href="../../../support/pair.html" title="pair"><tt class="computeroutput"><span class="identifier">pair</span></tt></a><span class="special">&lt;</span><span class="keyword">double</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&gt;</span> <span class="special">&gt;</span> <span class="identifier">mymap</span><span class="special">;</span>
<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span><a href="at_key.html" title="at_key"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at_key</span></tt></a><span class="special">&lt;</span><span class="identifier">mymap</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&amp;&gt;));</span>
</pre>
<div class="footnotes">
<br><hr width="100" align="left">
<div class="footnote"><p><sup>[<a name="ftn.id604438" href="#id604438" class="para">8</a>] </sup>
<a class="link" href="at_key.html" title="at_key"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at_key</span></code></a> reflects the actual
return type of the function <a class="link" href="../functions/at_key.html" title="at_key"><code class="computeroutput"><span class="identifier">at_key</span></code></a>. <span class="underline">_sequence</span>_s
typically return references to its elements via the <a class="link" href="../functions/at_key.html" title="at_key"><code class="computeroutput"><span class="identifier">at_key</span></code></a> function. If you
want to get the actual element type, use <a class="link" href="value_at_key.html" title="value_at_key"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">value_at_key</span></code></a>
<div class="footnote"><p><sup>[<a name="ftn.id467682" href="#id467682">8</a>] </sup>
<a href="at_key.html" title="at_key"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at_key</span></tt></a> reflects the actual
return type of the function <a href="../functions/at_key.html" title="at_key"><tt class="computeroutput"><span class="identifier">at_key</span></tt></a>. <span class="underline">_sequence</span>_s
typically return references to its elements via the <a href="../functions/at_key.html" title="at_key"><tt class="computeroutput"><span class="identifier">at_key</span></tt></a> function. If you
want to get the actual element type, use <a href="value_at_key.html" title="value_at_key"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">value_at_key</span></tt></a>
</p></div>
</div>
</div>

View File

@ -3,10 +3,10 @@
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>back</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.0">
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
<link rel="home" href="../../../../index.html" title="Chapter<65>1.<2E>Fusion 2.0">
<link rel="up" href="../metafunctions.html" title="Metafunctions">
<link rel="prev" href="front.html" title="front">
<link rel="previous" href="front.html" title="front">
<link rel="next" href="size.html" title="size">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@ -22,20 +22,23 @@
<div class="spirit-nav">
<a accesskey="p" href="front.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="size.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="back">
<div class="titlepage"><div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.metafunctions.back"></a><a class="link" href="back.html" title="back">back</a>
</h5></div></div></div>
<div class="section" lang="en">
<div class="titlepage">
<div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.metafunctions.back"></a><a href="back.html" title="back">back</a>
</h5></div></div>
<div></div>
</div>
<a name="fusion.sequence.intrinsic.metafunctions.back.description"></a><h6>
<a name="id598540"></a>
<a class="link" href="back.html#fusion.sequence.intrinsic.metafunctions.back.description">Description</a>
<a name="id462630"></a>
<a href="back.html#fusion.sequence.intrinsic.metafunctions.back.description">Description</a>
</h6>
<p>
Returns the result type of <a class="link" href="../functions/back.html" title="back"><code class="computeroutput"><span class="identifier">back</span></code></a>.
Returns the result type of <a href="../functions/back.html" title="back"><tt class="computeroutput"><span class="identifier">back</span></tt></a>.
</p>
<a name="fusion.sequence.intrinsic.metafunctions.back.synopsis"></a><h6>
<a name="id598568"></a>
<a class="link" href="back.html#fusion.sequence.intrinsic.metafunctions.back.synopsis">Synopsis</a>
<a name="id462678"></a>
<a href="back.html#fusion.sequence.intrinsic.metafunctions.back.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Seq</span><span class="special">&gt;</span>
<span class="keyword">struct</span> <span class="identifier">back</span>
@ -44,73 +47,62 @@
<span class="special">};</span>
</pre>
<div class="table">
<a name="id598638"></a><p class="title"><b>Table<EFBFBD>1.23.<2E>Parameters</b></p>
<div class="table-contents"><table class="table" summary="Parameters">
<a name="id462775"></a><p class="title"><b>Table<EFBFBD>1.23.<2E>Parameters</b></p>
<table class="table" summary="Parameters">
<colgroup>
<col>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
<th><p>
Parameter
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Requirement
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Description
</p>
</th>
</p></th>
</tr></thead>
<tbody><tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">Seq</span></code>
</p>
</td>
<td>
<p>
A model of <a class="link" href="../../concepts/forward_sequence.html" title="Forward Sequence">Forward
<td><p>
<tt class="computeroutput"><span class="identifier">Seq</span></tt>
</p></td>
<td><p>
A model of <a href="../../concepts/forward_sequence.html" title="Forward
Sequence">Forward
Sequence</a>
</p>
</td>
<td>
<p>
</p></td>
<td><p>
Argument sequence
</p>
</td>
</p></td>
</tr></tbody>
</table></div>
</table>
</div>
<br class="table-break"><a name="fusion.sequence.intrinsic.metafunctions.back.expression_semantics"></a><h6>
<a name="id598720"></a>
<a class="link" href="back.html#fusion.sequence.intrinsic.metafunctions.back.expression_semantics">Expression
<a name="fusion.sequence.intrinsic.metafunctions.back.expression_semantics"></a><h6>
<a name="id462874"></a>
<a href="back.html#fusion.sequence.intrinsic.metafunctions.back.expression_semantics">Expression
Semantics</a>
</h6>
<pre class="programlisting"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">back</span><span class="special">&lt;</span><span class="identifier">Seq</span><span class="special">&gt;::</span><span class="identifier">type</span>
</pre>
<p>
<span class="bold"><strong>Return type</strong></span>: Any type
<span class="bold"><b>Return type</b></span>: Any type
</p>
<p>
<span class="bold"><strong>Semantics</strong></span>: The type returned by dereferencing
an iterator to the last element in the sequence. Equivalent to <code class="computeroutput"><a class="link" href="../../../iterator/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><span class="special">&lt;</span><a class="link" href="../../../iterator/metafunctions/prior.html" title="prior"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">prior</span></code></a><span class="special">&lt;</span><a class="link" href="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">&lt;</span><span class="identifier">Seq</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">&gt;::</span><span class="identifier">type</span></code>.
<span class="bold"><b>Semantics</b></span>: The type returned by dereferencing
an iterator to the last element in the sequence. Equivalent to <tt class="computeroutput"><a href="../../../iterator/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><span class="special">&lt;</span><a href="../../../iterator/metafunctions/prior.html" title="prior"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">prior</span></tt></a><span class="special">&lt;</span><a href="end.html" title="end"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">end</span></tt></a><span class="special">&lt;</span><span class="identifier">Seq</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>.
</p>
<p>
/sequence/intrinsic/back.hpp&gt;
</p>
<a name="fusion.sequence.intrinsic.metafunctions.back.example"></a><h6>
<a name="id598870"></a>
<a class="link" href="back.html#fusion.sequence.intrinsic.metafunctions.back.example">Example</a>
<a name="id463105"></a>
<a href="back.html#fusion.sequence.intrinsic.metafunctions.back.example">Example</a>
</h6>
<pre class="programlisting"><span class="keyword">typedef</span> <a class="link" href="../../../container/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">vec</span><span class="special">;</span>
<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span><a class="link" href="back.html" title="back"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">back</span></code></a><span class="special">&lt;</span><span class="identifier">vec</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&amp;&gt;));</span>
<pre class="programlisting"><span class="keyword">typedef</span> <a href="../../../container/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">;</span>
<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span><a href="back.html" title="back"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">back</span></tt></a><span class="special">&lt;</span><span class="identifier">vec</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&amp;&gt;));</span>
</pre>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>

View File

@ -3,10 +3,10 @@
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>begin</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.0">
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
<link rel="home" href="../../../../index.html" title="Chapter<65>1.<2E>Fusion 2.0">
<link rel="up" href="../metafunctions.html" title="Metafunctions">
<link rel="prev" href="../metafunctions.html" title="Metafunctions">
<link rel="previous" href="../metafunctions.html" title="Metafunctions">
<link rel="next" href="end.html" title="end">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@ -22,20 +22,23 @@
<div class="spirit-nav">
<a accesskey="p" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="end.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="begin">
<div class="titlepage"><div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.metafunctions.begin"></a><a class="link" href="begin.html" title="begin">begin</a>
</h5></div></div></div>
<div class="section" lang="en">
<div class="titlepage">
<div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.metafunctions.begin"></a><a href="begin.html" title="begin">begin</a>
</h5></div></div>
<div></div>
</div>
<a name="fusion.sequence.intrinsic.metafunctions.begin.description"></a><h6>
<a name="id596746"></a>
<a class="link" href="begin.html#fusion.sequence.intrinsic.metafunctions.begin.description">Description</a>
<a name="id460036"></a>
<a href="begin.html#fusion.sequence.intrinsic.metafunctions.begin.description">Description</a>
</h6>
<p>
Returns the result type of <a class="link" href="../functions/begin.html" title="begin"><code class="computeroutput"><span class="identifier">begin</span></code></a>.
Returns the result type of <a href="../functions/begin.html" title="begin"><tt class="computeroutput"><span class="identifier">begin</span></tt></a>.
</p>
<a name="fusion.sequence.intrinsic.metafunctions.begin.synopsis"></a><h6>
<a name="id596775"></a>
<a class="link" href="begin.html#fusion.sequence.intrinsic.metafunctions.begin.synopsis">Synopsis</a>
<a name="id460084"></a>
<a href="begin.html#fusion.sequence.intrinsic.metafunctions.begin.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Seq</span><span class="special">&gt;</span>
<span class="keyword">struct</span> <span class="identifier">begin</span>
@ -44,75 +47,64 @@
<span class="special">};</span>
</pre>
<div class="table">
<a name="id596845"></a><p class="title"><b>Table<EFBFBD>1.19.<2E>Parameters</b></p>
<div class="table-contents"><table class="table" summary="Parameters">
<a name="id460180"></a><p class="title"><b>Table<EFBFBD>1.19.<2E>Parameters</b></p>
<table class="table" summary="Parameters">
<colgroup>
<col>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
<th><p>
Parameter
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Requirement
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Description
</p>
</th>
</p></th>
</tr></thead>
<tbody><tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">Seq</span></code>
</p>
</td>
<td>
<p>
A model of <a class="link" href="../../concepts/forward_sequence.html" title="Forward Sequence">Forward
<td><p>
<tt class="computeroutput"><span class="identifier">Seq</span></tt>
</p></td>
<td><p>
A model of <a href="../../concepts/forward_sequence.html" title="Forward
Sequence">Forward
Sequence</a>
</p>
</td>
<td>
<p>
</p></td>
<td><p>
Argument sequence
</p>
</td>
</p></td>
</tr></tbody>
</table></div>
</table>
</div>
<br class="table-break"><a name="fusion.sequence.intrinsic.metafunctions.begin.expression_semantics"></a><h6>
<a name="id596926"></a>
<a class="link" href="begin.html#fusion.sequence.intrinsic.metafunctions.begin.expression_semantics">Expression
<a name="fusion.sequence.intrinsic.metafunctions.begin.expression_semantics"></a><h6>
<a name="id460281"></a>
<a href="begin.html#fusion.sequence.intrinsic.metafunctions.begin.expression_semantics">Expression
Semantics</a>
</h6>
<pre class="programlisting"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">begin</span><span class="special">&lt;</span><span class="identifier">Seq</span><span class="special">&gt;::</span><span class="identifier">type</span>
</pre>
<p>
<span class="bold"><strong>Return type</strong></span>: An iterator modelling the
same traversal concept as <code class="computeroutput"><span class="identifier">Seq</span></code>.
<span class="bold"><b>Return type</b></span>: An iterator modelling the
same traversal concept as <tt class="computeroutput"><span class="identifier">Seq</span></tt>.
</p>
<p>
<span class="bold"><strong>Semantics</strong></span>: Returns the type of an iterator
to the first element of <code class="computeroutput"><span class="identifier">Seq</span></code>.
<span class="bold"><b>Semantics</b></span>: Returns the type of an iterator
to the first element of <tt class="computeroutput"><span class="identifier">Seq</span></tt>.
</p>
<p>
/sequence/intrinsic/begin.hpp&gt;
</p>
<a name="fusion.sequence.intrinsic.metafunctions.begin.example"></a><h6>
<a name="id597004"></a>
<a class="link" href="begin.html#fusion.sequence.intrinsic.metafunctions.begin.example">Example</a>
<a name="id460401"></a>
<a href="begin.html#fusion.sequence.intrinsic.metafunctions.begin.example">Example</a>
</h6>
<pre class="programlisting"><span class="keyword">typedef</span> <a class="link" href="../../../container/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">&gt;</span> <span class="identifier">vec</span><span class="special">;</span>
<span class="keyword">typedef</span> <a class="link" href="begin.html" title="begin"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">begin</span></code></a><span class="special">&lt;</span><span class="identifier">vec</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">it</span><span class="special">;</span>
<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span><a class="link" href="../../../iterator/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><span class="special">&lt;</span><span class="identifier">it</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&amp;&gt;))</span>
<pre class="programlisting"><span class="keyword">typedef</span> <a href="../../../container/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">;</span>
<span class="keyword">typedef</span> <a href="begin.html" title="begin"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">begin</span></tt></a><span class="special">&lt;</span><span class="identifier">vec</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">it</span><span class="special">;</span>
<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span><a href="../../../iterator/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><span class="special">&lt;</span><span class="identifier">it</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&amp;&gt;))</span>
</pre>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>

View File

@ -3,10 +3,10 @@
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>empty</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.0">
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
<link rel="home" href="../../../../index.html" title="Chapter<65>1.<2E>Fusion 2.0">
<link rel="up" href="../metafunctions.html" title="Metafunctions">
<link rel="prev" href="end.html" title="end">
<link rel="previous" href="end.html" title="end">
<link rel="next" href="front.html" title="front">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@ -22,20 +22,23 @@
<div class="spirit-nav">
<a accesskey="p" href="end.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="front.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="empty">
<div class="titlepage"><div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.metafunctions.empty"></a><a class="link" href="empty.html" title="empty">empty</a>
</h5></div></div></div>
<div class="section" lang="en">
<div class="titlepage">
<div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.metafunctions.empty"></a><a href="empty.html" title="empty">empty</a>
</h5></div></div>
<div></div>
</div>
<a name="fusion.sequence.intrinsic.metafunctions.empty.description"></a><h6>
<a name="id597634"></a>
<a class="link" href="empty.html#fusion.sequence.intrinsic.metafunctions.empty.description">Description</a>
<a name="id461321"></a>
<a href="empty.html#fusion.sequence.intrinsic.metafunctions.empty.description">Description</a>
</h6>
<p>
Returns the result type of <a class="link" href="../functions/empty.html" title="empty"><code class="computeroutput"><span class="identifier">empty</span></code></a>.
Returns the result type of <a href="../functions/empty.html" title="empty"><tt class="computeroutput"><span class="identifier">empty</span></tt></a>.
</p>
<a name="fusion.sequence.intrinsic.metafunctions.empty.synopsis"></a><h6>
<a name="id597663"></a>
<a class="link" href="empty.html#fusion.sequence.intrinsic.metafunctions.empty.synopsis">Synopsis</a>
<a name="id461369"></a>
<a href="empty.html#fusion.sequence.intrinsic.metafunctions.empty.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Seq</span><span class="special">&gt;</span>
<span class="keyword">struct</span> <span class="identifier">empty</span>
@ -44,78 +47,67 @@
<span class="special">};</span>
</pre>
<div class="table">
<a name="id597733"></a><p class="title"><b>Table<EFBFBD>1.21.<2E>Parameters</b></p>
<div class="table-contents"><table class="table" summary="Parameters">
<a name="id461466"></a><p class="title"><b>Table<EFBFBD>1.21.<2E>Parameters</b></p>
<table class="table" summary="Parameters">
<colgroup>
<col>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
<th><p>
Parameter
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Requirement
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Description
</p>
</th>
</p></th>
</tr></thead>
<tbody><tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">Seq</span></code>
</p>
</td>
<td>
<p>
A model of <a class="link" href="../../concepts/forward_sequence.html" title="Forward Sequence">Forward
<td><p>
<tt class="computeroutput"><span class="identifier">Seq</span></tt>
</p></td>
<td><p>
A model of <a href="../../concepts/forward_sequence.html" title="Forward
Sequence">Forward
Sequence</a>
</p>
</td>
<td>
<p>
</p></td>
<td><p>
Argument sequence
</p>
</td>
</p></td>
</tr></tbody>
</table></div>
</table>
</div>
<br class="table-break"><a name="fusion.sequence.intrinsic.metafunctions.empty.expression_semantics"></a><h6>
<a name="id597814"></a>
<a class="link" href="empty.html#fusion.sequence.intrinsic.metafunctions.empty.expression_semantics">Expression
<a name="fusion.sequence.intrinsic.metafunctions.empty.expression_semantics"></a><h6>
<a name="id461568"></a>
<a href="empty.html#fusion.sequence.intrinsic.metafunctions.empty.expression_semantics">Expression
Semantics</a>
</h6>
<pre class="programlisting"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">empty</span><span class="special">&lt;</span><span class="identifier">Seq</span><span class="special">&gt;::</span><span class="identifier">type</span>
</pre>
<p>
<span class="bold"><strong>Return type</strong></span>: An <a href="http://www.boost.org/libs/mpl/doc/refmanual/integral-constant.html" target="_top">MPL
<span class="bold"><b>Return type</b></span>: An <a href="http://www.boost.org/libs/mpl/doc/refmanual/integral-constant.html" target="_top">MPL
Integral Constant</a>
</p>
<p>
<span class="bold"><strong>Semantics</strong></span>: Returns <code class="computeroutput"><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">true_</span></code>
if <code class="computeroutput"><span class="identifier">Seq</span></code> has zero elements,
<code class="computeroutput"><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">false_</span></code> otherwise.
<span class="bold"><b>Semantics</b></span>: Returns <tt class="computeroutput"><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">true_</span></tt>
if <tt class="computeroutput"><span class="identifier">Seq</span></tt> has zero elements,
<tt class="computeroutput"><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">false_</span></tt> otherwise.
</p>
<p>
/sequence/intrinsic/empty.hpp&gt;
</p>
<a name="fusion.sequence.intrinsic.metafunctions.empty.example"></a><h6>
<a name="id597919"></a>
<a class="link" href="empty.html#fusion.sequence.intrinsic.metafunctions.empty.example">Example</a>
<a name="id461725"></a>
<a href="empty.html#fusion.sequence.intrinsic.metafunctions.empty.example">Example</a>
</h6>
<pre class="programlisting"><span class="keyword">typedef</span> <a class="link" href="../../../container/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a><span class="special">&lt;&gt;</span> <span class="identifier">empty_vec</span><span class="special">;</span>
<span class="keyword">typedef</span> <a class="link" href="../../../container/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">,</span><span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">;</span>
<pre class="programlisting"><span class="keyword">typedef</span> <a href="../../../container/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;&gt;</span> <span class="identifier">empty_vec</span><span class="special">;</span>
<span class="keyword">typedef</span> <a href="../../../container/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">float</span><span class="special">,</span><span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">;</span>
<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span><a class="link" href="empty.html" title="empty"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">empty</span></code></a><span class="special">&lt;</span><span class="identifier">empty_vec</span><span class="special">&gt;));</span>
<span class="identifier">BOOST_MPL_ASSERT_NOT</span><span class="special">((</span><a class="link" href="empty.html" title="empty"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">empty</span></code></a><span class="special">&lt;</span><span class="identifier">vec</span><span class="special">&gt;));</span>
<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span><a href="empty.html" title="empty"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">empty</span></tt></a><span class="special">&lt;</span><span class="identifier">empty_vec</span><span class="special">&gt;));</span>
<span class="identifier">BOOST_MPL_ASSERT_NOT</span><span class="special">((</span><a href="empty.html" title="empty"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">empty</span></tt></a><span class="special">&lt;</span><span class="identifier">vec</span><span class="special">&gt;));</span>
</pre>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>

View File

@ -3,10 +3,10 @@
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>end</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.0">
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
<link rel="home" href="../../../../index.html" title="Chapter<65>1.<2E>Fusion 2.0">
<link rel="up" href="../metafunctions.html" title="Metafunctions">
<link rel="prev" href="begin.html" title="begin">
<link rel="previous" href="begin.html" title="begin">
<link rel="next" href="empty.html" title="empty">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@ -22,20 +22,23 @@
<div class="spirit-nav">
<a accesskey="p" href="begin.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="empty.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="end">
<div class="titlepage"><div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.metafunctions.end"></a><a class="link" href="end.html" title="end">end</a>
</h5></div></div></div>
<div class="section" lang="en">
<div class="titlepage">
<div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.metafunctions.end"></a><a href="end.html" title="end">end</a>
</h5></div></div>
<div></div>
</div>
<a name="fusion.sequence.intrinsic.metafunctions.end.description"></a><h6>
<a name="id597175"></a>
<a class="link" href="end.html#fusion.sequence.intrinsic.metafunctions.end.description">Description</a>
<a name="id460654"></a>
<a href="end.html#fusion.sequence.intrinsic.metafunctions.end.description">Description</a>
</h6>
<p>
Returns the result type of <a class="link" href="../functions/end.html" title="end"><code class="computeroutput"><span class="identifier">end</span></code></a>.
Returns the result type of <a href="../functions/end.html" title="end"><tt class="computeroutput"><span class="identifier">end</span></tt></a>.
</p>
<a name="fusion.sequence.intrinsic.metafunctions.end.synopsis"></a><h6>
<a name="id597201"></a>
<a class="link" href="end.html#fusion.sequence.intrinsic.metafunctions.end.synopsis">Synopsis</a>
<a name="id460701"></a>
<a href="end.html#fusion.sequence.intrinsic.metafunctions.end.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Seq</span><span class="special">&gt;</span>
<span class="keyword">struct</span> <span class="identifier">end</span>
@ -44,75 +47,64 @@
<span class="special">};</span>
</pre>
<div class="table">
<a name="id597271"></a><p class="title"><b>Table<EFBFBD>1.20.<2E>Parameters</b></p>
<div class="table-contents"><table class="table" summary="Parameters">
<a name="id460798"></a><p class="title"><b>Table<EFBFBD>1.20.<2E>Parameters</b></p>
<table class="table" summary="Parameters">
<colgroup>
<col>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
<th><p>
Parameter
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Requirement
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Description
</p>
</th>
</p></th>
</tr></thead>
<tbody><tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">Seq</span></code>
</p>
</td>
<td>
<p>
A model of <a class="link" href="../../concepts/forward_sequence.html" title="Forward Sequence">Forward
<td><p>
<tt class="computeroutput"><span class="identifier">Seq</span></tt>
</p></td>
<td><p>
A model of <a href="../../concepts/forward_sequence.html" title="Forward
Sequence">Forward
Sequence</a>
</p>
</td>
<td>
<p>
</p></td>
<td><p>
Argument sequence
</p>
</td>
</p></td>
</tr></tbody>
</table></div>
</table>
</div>
<br class="table-break"><a name="fusion.sequence.intrinsic.metafunctions.end.expression_semantics"></a><h6>
<a name="id597352"></a>
<a class="link" href="end.html#fusion.sequence.intrinsic.metafunctions.end.expression_semantics">Expression
<a name="fusion.sequence.intrinsic.metafunctions.end.expression_semantics"></a><h6>
<a name="id460898"></a>
<a href="end.html#fusion.sequence.intrinsic.metafunctions.end.expression_semantics">Expression
Semantics</a>
</h6>
<pre class="programlisting"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">end</span><span class="special">&lt;</span><span class="identifier">Seq</span><span class="special">&gt;::</span><span class="identifier">type</span>
</pre>
<p>
<span class="bold"><strong>Return type</strong></span>: A model of the same traversal
concept as <code class="computeroutput"><span class="identifier">Seq</span></code>.
<span class="bold"><b>Return type</b></span>: A model of the same traversal
concept as <tt class="computeroutput"><span class="identifier">Seq</span></tt>.
</p>
<p>
<span class="bold"><strong>Semantics</strong></span>: Returns the type of an iterator
one past the end of <code class="computeroutput"><span class="identifier">Seq</span></code>.
<span class="bold"><b>Semantics</b></span>: Returns the type of an iterator
one past the end of <tt class="computeroutput"><span class="identifier">Seq</span></tt>.
</p>
<p>
/sequence/intrinsic/end.hpp&gt;
</p>
<a name="fusion.sequence.intrinsic.metafunctions.end.example"></a><h6>
<a name="id597430"></a>
<a class="link" href="end.html#fusion.sequence.intrinsic.metafunctions.end.example">Example</a>
<a name="id461016"></a>
<a href="end.html#fusion.sequence.intrinsic.metafunctions.end.example">Example</a>
</h6>
<pre class="programlisting"><span class="keyword">typedef</span> <a class="link" href="../../../container/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">&gt;</span> <span class="identifier">vec</span><span class="special">;</span>
<span class="keyword">typedef</span> <a class="link" href="../../../iterator/metafunctions/prior.html" title="prior"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">prior</span></code></a><span class="special">&lt;</span><a class="link" href="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">&lt;</span><span class="identifier">vec</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">first</span><span class="special">;</span>
<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span><a class="link" href="../../../iterator/metafunctions/equal_to.html" title="equal_to"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">equal_to</span></code></a><span class="special">&lt;</span><span class="identifier">first</span><span class="special">,</span> <a class="link" href="begin.html" title="begin"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">begin</span></code></a><span class="special">&lt;</span><span class="identifier">vec</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">&gt;))</span>
<pre class="programlisting"><span class="keyword">typedef</span> <a href="../../../container/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">;</span>
<span class="keyword">typedef</span> <a href="../../../iterator/metafunctions/prior.html" title="prior"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">prior</span></tt></a><span class="special">&lt;</span><a href="end.html" title="end"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">end</span></tt></a><span class="special">&lt;</span><span class="identifier">vec</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">first</span><span class="special">;</span>
<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span><a href="../../../iterator/metafunctions/equal_to.html" title="equal_to"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">equal_to</span></tt></a><span class="special">&lt;</span><span class="identifier">first</span><span class="special">,</span> <a href="begin.html" title="begin"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">begin</span></tt></a><span class="special">&lt;</span><span class="identifier">vec</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">&gt;))</span>
</pre>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>

View File

@ -3,10 +3,10 @@
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>front</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.0">
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
<link rel="home" href="../../../../index.html" title="Chapter<65>1.<2E>Fusion 2.0">
<link rel="up" href="../metafunctions.html" title="Metafunctions">
<link rel="prev" href="empty.html" title="empty">
<link rel="previous" href="empty.html" title="empty">
<link rel="next" href="back.html" title="back">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@ -22,20 +22,23 @@
<div class="spirit-nav">
<a accesskey="p" href="empty.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="back.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="front">
<div class="titlepage"><div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.metafunctions.front"></a><a class="link" href="front.html" title="front">front</a>
</h5></div></div></div>
<div class="section" lang="en">
<div class="titlepage">
<div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.metafunctions.front"></a><a href="front.html" title="front">front</a>
</h5></div></div>
<div></div>
</div>
<a name="fusion.sequence.intrinsic.metafunctions.front.description"></a><h6>
<a name="id598093"></a>
<a class="link" href="front.html#fusion.sequence.intrinsic.metafunctions.front.description">Description</a>
<a name="id461984"></a>
<a href="front.html#fusion.sequence.intrinsic.metafunctions.front.description">Description</a>
</h6>
<p>
Returns the result type of <a class="link" href="../functions/front.html" title="front"><code class="computeroutput"><span class="identifier">front</span></code></a>.
Returns the result type of <a href="../functions/front.html" title="front"><tt class="computeroutput"><span class="identifier">front</span></tt></a>.
</p>
<a name="fusion.sequence.intrinsic.metafunctions.front.synopsis"></a><h6>
<a name="id598122"></a>
<a class="link" href="front.html#fusion.sequence.intrinsic.metafunctions.front.synopsis">Synopsis</a>
<a name="id462032"></a>
<a href="front.html#fusion.sequence.intrinsic.metafunctions.front.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Seq</span><span class="special">&gt;</span>
<span class="keyword">struct</span> <span class="identifier">front</span>
@ -44,74 +47,63 @@
<span class="special">};</span>
</pre>
<div class="table">
<a name="id598191"></a><p class="title"><b>Table<EFBFBD>1.22.<2E>Parameters</b></p>
<div class="table-contents"><table class="table" summary="Parameters">
<a name="id462129"></a><p class="title"><b>Table<EFBFBD>1.22.<2E>Parameters</b></p>
<table class="table" summary="Parameters">
<colgroup>
<col>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
<th><p>
Parameter
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Requirement
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Description
</p>
</th>
</p></th>
</tr></thead>
<tbody><tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">Seq</span></code>
</p>
</td>
<td>
<p>
A model of <a class="link" href="../../concepts/forward_sequence.html" title="Forward Sequence">Forward
<td><p>
<tt class="computeroutput"><span class="identifier">Seq</span></tt>
</p></td>
<td><p>
A model of <a href="../../concepts/forward_sequence.html" title="Forward
Sequence">Forward
Sequence</a>
</p>
</td>
<td>
<p>
</p></td>
<td><p>
Argument sequence
</p>
</td>
</p></td>
</tr></tbody>
</table></div>
</table>
</div>
<br class="table-break"><a name="fusion.sequence.intrinsic.metafunctions.front.expression_semantics"></a><h6>
<a name="id598273"></a>
<a class="link" href="front.html#fusion.sequence.intrinsic.metafunctions.front.expression_semantics">Expression
<a name="fusion.sequence.intrinsic.metafunctions.front.expression_semantics"></a><h6>
<a name="id462230"></a>
<a href="front.html#fusion.sequence.intrinsic.metafunctions.front.expression_semantics">Expression
Semantics</a>
</h6>
<pre class="programlisting"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">front</span><span class="special">&lt;</span><span class="identifier">Seq</span><span class="special">&gt;::</span><span class="identifier">type</span>
</pre>
<p>
<span class="bold"><strong>Return type</strong></span>: Any type
<span class="bold"><b>Return type</b></span>: Any type
</p>
<p>
<span class="bold"><strong>Semantics</strong></span>: The type returned by dereferencing
an iterator to the first element in <code class="computeroutput"><span class="identifier">Seq</span></code>.
Equivalent to <code class="computeroutput"><a class="link" href="../../../iterator/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><span class="special">&lt;</span><a class="link" href="begin.html" title="begin"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">begin</span></code></a><span class="special">&lt;</span><span class="identifier">Seq</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">&gt;::</span><span class="identifier">type</span></code>.
<span class="bold"><b>Semantics</b></span>: The type returned by dereferencing
an iterator to the first element in <tt class="computeroutput"><span class="identifier">Seq</span></tt>.
Equivalent to <tt class="computeroutput"><a href="../../../iterator/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><span class="special">&lt;</span><a href="begin.html" title="begin"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">begin</span></tt></a><span class="special">&lt;</span><span class="identifier">Seq</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">&gt;::</span><span class="identifier">type</span></tt>.
</p>
<p>
/sequence/intrinsic/front.hpp&gt;
</p>
<a name="fusion.sequence.intrinsic.metafunctions.front.example"></a><h6>
<a name="id598404"></a>
<a class="link" href="front.html#fusion.sequence.intrinsic.metafunctions.front.example">Example</a>
<a name="id462431"></a>
<a href="front.html#fusion.sequence.intrinsic.metafunctions.front.example">Example</a>
</h6>
<pre class="programlisting"><span class="keyword">typedef</span> <a class="link" href="../../../container/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">vec</span><span class="special">;</span>
<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span><a class="link" href="front.html" title="front"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">front</span></code></a><span class="special">&lt;</span><span class="identifier">vec</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&amp;&gt;));</span>
<pre class="programlisting"><span class="keyword">typedef</span> <a href="../../../container/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">;</span>
<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span><a href="front.html" title="front"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">front</span></tt></a><span class="special">&lt;</span><span class="identifier">vec</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&amp;&gt;));</span>
</pre>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>

View File

@ -3,10 +3,10 @@
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>has_key</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.0">
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
<link rel="home" href="../../../../index.html" title="Chapter<65>1.<2E>Fusion 2.0">
<link rel="up" href="../metafunctions.html" title="Metafunctions">
<link rel="prev" href="value_at_c.html" title="value_at_c">
<link rel="previous" href="value_at_c.html" title="value_at_c">
<link rel="next" href="at_key.html" title="at_key">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@ -22,20 +22,23 @@
<div class="spirit-nav">
<a accesskey="p" href="value_at_c.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="at_key.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="has_key">
<div class="titlepage"><div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.metafunctions.has_key"></a><a class="link" href="has_key.html" title="has_key">has_key</a>
</h5></div></div></div>
<div class="section" lang="en">
<div class="titlepage">
<div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.metafunctions.has_key"></a><a href="has_key.html" title="has_key">has_key</a>
</h5></div></div>
<div></div>
</div>
<a name="fusion.sequence.intrinsic.metafunctions.has_key.description"></a><h6>
<a name="id603832"></a>
<a class="link" href="has_key.html#fusion.sequence.intrinsic.metafunctions.has_key.description">Description</a>
<a name="id466822"></a>
<a href="has_key.html#fusion.sequence.intrinsic.metafunctions.has_key.description">Description</a>
</h6>
<p>
Returns the result type of <a class="link" href="../functions/has_key.html" title="has_key"><code class="computeroutput"><span class="identifier">has_key</span></code></a>.
Returns the result type of <a href="../functions/has_key.html" title="has_key"><tt class="computeroutput"><span class="identifier">has_key</span></tt></a>.
</p>
<a name="fusion.sequence.intrinsic.metafunctions.has_key.synopsis"></a><h6>
<a name="id603863"></a>
<a class="link" href="has_key.html#fusion.sequence.intrinsic.metafunctions.has_key.synopsis">Synopsis</a>
<a name="id466869"></a>
<a href="has_key.html#fusion.sequence.intrinsic.metafunctions.has_key.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span>
<span class="keyword">typename</span> <span class="identifier">Seq</span><span class="special">,</span>
@ -46,96 +49,79 @@
<span class="special">};</span>
</pre>
<div class="table">
<a name="id603949"></a><p class="title"><b>Table<EFBFBD>1.29.<2E>Parameters</b></p>
<div class="table-contents"><table class="table" summary="Parameters">
<a name="id466985"></a><p class="title"><b>Table<EFBFBD>1.29.<2E>Parameters</b></p>
<table class="table" summary="Parameters">
<colgroup>
<col>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
<th><p>
Parameter
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Requirement
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Description
</p>
</th>
</p></th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">Seq</span></code>
</p>
</td>
<td>
<p>
A model of <a class="link" href="../../concepts/forward_sequence.html" title="Forward Sequence">Forward
<td><p>
<tt class="computeroutput"><span class="identifier">Seq</span></tt>
</p></td>
<td><p>
A model of <a href="../../concepts/forward_sequence.html" title="Forward
Sequence">Forward
Sequence</a>
</p>
</td>
<td>
<p>
</p></td>
<td><p>
Argument sequence
</p>
</td>
</p></td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">Key</span></code>
</p>
</td>
<td>
<p>
<td><p>
<tt class="computeroutput"><span class="identifier">Key</span></tt>
</p></td>
<td><p>
Any type
</p>
</td>
<td>
<p>
</p></td>
<td><p>
Key type
</p>
</td>
</p></td>
</tr>
</tbody>
</table></div>
</table>
</div>
<br class="table-break"><a name="fusion.sequence.intrinsic.metafunctions.has_key.expression_semantics"></a><h6>
<a name="id604061"></a>
<a class="link" href="has_key.html#fusion.sequence.intrinsic.metafunctions.has_key.expression_semantics">Expression
<a name="fusion.sequence.intrinsic.metafunctions.has_key.expression_semantics"></a><h6>
<a name="id467122"></a>
<a href="has_key.html#fusion.sequence.intrinsic.metafunctions.has_key.expression_semantics">Expression
Semantics</a>
</h6>
<pre class="programlisting"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">has_key</span><span class="special">&lt;</span><span class="identifier">Seq</span><span class="special">,</span> <span class="identifier">Key</span><span class="special">&gt;::</span><span class="identifier">type</span>
</pre>
<p>
<span class="bold"><strong>Return type</strong></span>: An <a href="http://www.boost.org/libs/mpl/doc/refmanual/integral-constant.html" target="_top">MPL
<span class="bold"><b>Return type</b></span>: An <a href="http://www.boost.org/libs/mpl/doc/refmanual/integral-constant.html" target="_top">MPL
Integral Constant</a>.
</p>
<p>
<span class="bold"><strong>Semantics</strong></span>: Returns <code class="computeroutput"><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">true_</span></code>
if <code class="computeroutput"><span class="identifier">Seq</span></code> contains an element
with key type <code class="computeroutput"><span class="identifier">Key</span></code>, returns
<code class="computeroutput"><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">false_</span></code> otherwise.
<span class="bold"><b>Semantics</b></span>: Returns <tt class="computeroutput"><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">true_</span></tt>
if <tt class="computeroutput"><span class="identifier">Seq</span></tt> contains an element
with key type <tt class="computeroutput"><span class="identifier">Key</span></tt>, returns
<tt class="computeroutput"><span class="identifier">mpl</span><span class="special">::</span><span class="identifier">false_</span></tt> otherwise.
</p>
<p>
/sequence/intrinsic/has_key.hpp&gt;
</p>
<a name="fusion.sequence.intrinsic.metafunctions.has_key.example"></a><h6>
<a name="id604181"></a>
<a class="link" href="has_key.html#fusion.sequence.intrinsic.metafunctions.has_key.example">Example</a>
<a name="id467302"></a>
<a href="has_key.html#fusion.sequence.intrinsic.metafunctions.has_key.example">Example</a>
</h6>
<pre class="programlisting"><span class="keyword">typedef</span> <a class="link" href="../../../container/map.html" title="map"><code class="computeroutput"><span class="identifier">map</span></code></a><span class="special">&lt;</span><a class="link" href="../../../support/pair.html" title="pair"><code class="computeroutput"><span class="identifier">pair</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> <a class="link" href="../../../support/pair.html" title="pair"><code class="computeroutput"><span class="identifier">pair</span></code></a><span class="special">&lt;</span><span class="keyword">char</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&gt;,</span> <a class="link" href="../../../support/pair.html" title="pair"><code class="computeroutput"><span class="identifier">pair</span></code></a><span class="special">&lt;</span><span class="keyword">double</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&gt;</span> <span class="special">&gt;</span> <span class="identifier">mymap</span><span class="special">;</span>
<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span><a class="link" href="has_key.html" title="has_key"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">has_key</span></code></a><span class="special">&lt;</span><span class="identifier">mymap</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&gt;));</span>
<span class="identifier">BOOST_MPL_ASSERT_NOT</span><span class="special">((</span><a class="link" href="has_key.html" title="has_key"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">has_key</span></code></a><span class="special">&lt;</span><span class="identifier">mymap</span><span class="special">,</span> <span class="keyword">void</span><span class="special">*&gt;));</span>
<pre class="programlisting"><span class="keyword">typedef</span> <a href="../../../container/map.html" title="map"><tt class="computeroutput"><span class="identifier">map</span></tt></a><span class="special">&lt;</span><a href="../../../support/pair.html" title="pair"><tt class="computeroutput"><span class="identifier">pair</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> <a href="../../../support/pair.html" title="pair"><tt class="computeroutput"><span class="identifier">pair</span></tt></a><span class="special">&lt;</span><span class="keyword">char</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&gt;,</span> <a href="../../../support/pair.html" title="pair"><tt class="computeroutput"><span class="identifier">pair</span></tt></a><span class="special">&lt;</span><span class="keyword">double</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&gt;</span> <span class="special">&gt;</span> <span class="identifier">mymap</span><span class="special">;</span>
<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span><a href="has_key.html" title="has_key"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">has_key</span></tt></a><span class="special">&lt;</span><span class="identifier">mymap</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&gt;));</span>
<span class="identifier">BOOST_MPL_ASSERT_NOT</span><span class="special">((</span><a href="has_key.html" title="has_key"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">has_key</span></tt></a><span class="special">&lt;</span><span class="identifier">mymap</span><span class="special">,</span> <span class="keyword">void</span><span class="special">*&gt;));</span>
</pre>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>

View File

@ -3,10 +3,10 @@
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>size</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.0">
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
<link rel="home" href="../../../../index.html" title="Chapter<65>1.<2E>Fusion 2.0">
<link rel="up" href="../metafunctions.html" title="Metafunctions">
<link rel="prev" href="back.html" title="back">
<link rel="previous" href="back.html" title="back">
<link rel="next" href="at.html" title="at">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@ -22,20 +22,23 @@
<div class="spirit-nav">
<a accesskey="p" href="back.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="at.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="size">
<div class="titlepage"><div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.metafunctions.size"></a><a class="link" href="size.html" title="size">size</a>
</h5></div></div></div>
<div class="section" lang="en">
<div class="titlepage">
<div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.metafunctions.size"></a><a href="size.html" title="size">size</a>
</h5></div></div>
<div></div>
</div>
<a name="fusion.sequence.intrinsic.metafunctions.size.description"></a><h6>
<a name="id599005"></a>
<a class="link" href="size.html#fusion.sequence.intrinsic.metafunctions.size.description">Description</a>
<a name="id463304"></a>
<a href="size.html#fusion.sequence.intrinsic.metafunctions.size.description">Description</a>
</h6>
<p>
Returns the result type of <a class="link" href="../functions/size.html" title="size"><code class="computeroutput"><span class="identifier">size</span></code></a>.
Returns the result type of <a href="../functions/size.html" title="size"><tt class="computeroutput"><span class="identifier">size</span></tt></a>.
</p>
<a name="fusion.sequence.intrinsic.metafunctions.size.synopsis"></a><h6>
<a name="id599034"></a>
<a class="link" href="size.html#fusion.sequence.intrinsic.metafunctions.size.synopsis">Synopsis</a>
<a name="id463351"></a>
<a href="size.html#fusion.sequence.intrinsic.metafunctions.size.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Seq</span><span class="special">&gt;</span>
<span class="keyword">struct</span> <span class="identifier">size</span>
@ -44,74 +47,63 @@
<span class="special">};</span>
</pre>
<div class="table">
<a name="id599104"></a><p class="title"><b>Table<EFBFBD>1.24.<2E>Parameters</b></p>
<div class="table-contents"><table class="table" summary="Parameters">
<a name="id463448"></a><p class="title"><b>Table<EFBFBD>1.24.<2E>Parameters</b></p>
<table class="table" summary="Parameters">
<colgroup>
<col>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
<th><p>
Parameter
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Requirement
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Description
</p>
</th>
</p></th>
</tr></thead>
<tbody><tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">Seq</span></code>
</p>
</td>
<td>
<p>
A model of <a class="link" href="../../concepts/forward_sequence.html" title="Forward Sequence">Forward
<td><p>
<tt class="computeroutput"><span class="identifier">Seq</span></tt>
</p></td>
<td><p>
A model of <a href="../../concepts/forward_sequence.html" title="Forward
Sequence">Forward
Sequence</a>
</p>
</td>
<td>
<p>
</p></td>
<td><p>
Argument sequence
</p>
</td>
</p></td>
</tr></tbody>
</table></div>
</table>
</div>
<br class="table-break"><a name="fusion.sequence.intrinsic.metafunctions.size.expression_semantics"></a><h6>
<a name="id599185"></a>
<a class="link" href="size.html#fusion.sequence.intrinsic.metafunctions.size.expression_semantics">Expression
<a name="fusion.sequence.intrinsic.metafunctions.size.expression_semantics"></a><h6>
<a name="id463548"></a>
<a href="size.html#fusion.sequence.intrinsic.metafunctions.size.expression_semantics">Expression
Semantics</a>
</h6>
<pre class="programlisting"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">size</span><span class="special">&lt;</span><span class="identifier">Seq</span><span class="special">&gt;::</span><span class="identifier">type</span>
</pre>
<p>
<span class="bold"><strong>Return type</strong></span>: An <a href="http://www.boost.org/libs/mpl/doc/refmanual/integral-constant.html" target="_top">MPL
<span class="bold"><b>Return type</b></span>: An <a href="http://www.boost.org/libs/mpl/doc/refmanual/integral-constant.html" target="_top">MPL
Integral Constant</a>.
</p>
<p>
<span class="bold"><strong>Semantics</strong></span>: Returns the number of elements
in <code class="computeroutput"><span class="identifier">Seq</span></code>.
<span class="bold"><b>Semantics</b></span>: Returns the number of elements
in <tt class="computeroutput"><span class="identifier">Seq</span></tt>.
</p>
<p>
/sequence/intrinsic/size.hpp&gt;
</p>
<a name="fusion.sequence.intrinsic.metafunctions.size.example"></a><h6>
<a name="id599261"></a>
<a class="link" href="size.html#fusion.sequence.intrinsic.metafunctions.size.example">Example</a>
<a name="id463662"></a>
<a href="size.html#fusion.sequence.intrinsic.metafunctions.size.example">Example</a>
</h6>
<pre class="programlisting"><span class="keyword">typedef</span> <a class="link" href="../../../container/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">,</span><span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">;</span>
<span class="keyword">typedef</span> <a class="link" href="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">&lt;</span><span class="identifier">vec</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">size_mpl_integral_constant</span><span class="special">;</span>
<pre class="programlisting"><span class="keyword">typedef</span> <a href="../../../container/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">float</span><span class="special">,</span><span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">;</span>
<span class="keyword">typedef</span> <a href="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">&lt;</span><span class="identifier">vec</span><span class="special">&gt;::</span><span class="identifier">type</span> <span class="identifier">size_mpl_integral_constant</span><span class="special">;</span>
<span class="identifier">BOOST_MPL_ASSERT_RELATION</span><span class="special">(</span><span class="identifier">size_mpl_integral_constant</span><span class="special">::</span><span class="identifier">value</span><span class="special">,</span> <span class="special">==,</span> <span class="number">3</span><span class="special">);</span>
</pre>
</div>

View File

@ -3,10 +3,10 @@
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>swap</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.0">
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
<link rel="home" href="../../../../index.html" title="Chapter<65>1.<2E>Fusion 2.0">
<link rel="up" href="../metafunctions.html" title="Metafunctions">
<link rel="prev" href="value_at_key.html" title="value_at_key">
<link rel="previous" href="value_at_key.html" title="value_at_key">
<link rel="next" href="../../operator.html" title="Operator">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@ -22,20 +22,23 @@
<div class="spirit-nav">
<a accesskey="p" href="value_at_key.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../operator.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="swap">
<div class="titlepage"><div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.metafunctions.swap"></a><a class="link" href="swap.html" title="swap">swap</a>
</h5></div></div></div>
<div class="section" lang="en">
<div class="titlepage">
<div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.metafunctions.swap"></a><a href="swap.html" title="swap">swap</a>
</h5></div></div>
<div></div>
</div>
<a name="fusion.sequence.intrinsic.metafunctions.swap.description"></a><h6>
<a name="id606164"></a>
<a class="link" href="swap.html#fusion.sequence.intrinsic.metafunctions.swap.description">Description</a>
<a name="id469266"></a>
<a href="swap.html#fusion.sequence.intrinsic.metafunctions.swap.description">Description</a>
</h6>
<p>
Returns the return type of swap.
</p>
<a name="fusion.sequence.intrinsic.metafunctions.swap.synopsis"></a><h6>
<a name="id606184"></a>
<a class="link" href="swap.html#fusion.sequence.intrinsic.metafunctions.swap.synopsis">Synopsis</a>
<a name="id469297"></a>
<a href="swap.html#fusion.sequence.intrinsic.metafunctions.swap.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Seq1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Seq2</span><span class="special">&gt;</span>
<span class="keyword">struct</span> <span class="identifier">swap</span>
@ -44,62 +47,51 @@
<span class="special">};</span>
</pre>
<div class="table">
<a name="id606268"></a><p class="title"><b>Table<EFBFBD>1.32.<2E>Parameters</b></p>
<div class="table-contents"><table class="table" summary="Parameters">
<a name="id469414"></a><p class="title"><b>Table<EFBFBD>1.32.<2E>Parameters</b></p>
<table class="table" summary="Parameters">
<colgroup>
<col>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
<th><p>
Parameters
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Requirement
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Description
</p>
</th>
</p></th>
</tr></thead>
<tbody><tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">Seq1</span></code>, <code class="computeroutput"><span class="identifier">Seq2</span></code>
</p>
</td>
<td>
<p>
Models of <a class="link" href="../../concepts/forward_sequence.html" title="Forward Sequence">Forward
<td><p>
<tt class="computeroutput"><span class="identifier">Seq1</span></tt>, <tt class="computeroutput"><span class="identifier">Seq2</span></tt>
</p></td>
<td><p>
Models of <a href="../../concepts/forward_sequence.html" title="Forward
Sequence">Forward
Sequence</a>
</p>
</td>
<td>
<p>
</p></td>
<td><p>
The sequences being swapped
</p>
</td>
</p></td>
</tr></tbody>
</table></div>
</table>
</div>
<br class="table-break"><a name="fusion.sequence.intrinsic.metafunctions.swap.expression_semantics"></a><h6>
<a name="id606358"></a>
<a class="link" href="swap.html#fusion.sequence.intrinsic.metafunctions.swap.expression_semantics">Expression
<a name="fusion.sequence.intrinsic.metafunctions.swap.expression_semantics"></a><h6>
<a name="id469528"></a>
<a href="swap.html#fusion.sequence.intrinsic.metafunctions.swap.expression_semantics">Expression
Semantics</a>
</h6>
<pre class="programlisting"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">swap</span><span class="special">&lt;</span><span class="identifier">Seq1</span><span class="special">,</span> <span class="identifier">Seq2</span><span class="special">&gt;::</span><span class="identifier">type</span>
</pre>
<p>
<span class="bold"><strong>Return type</strong></span>: <code class="computeroutput"><span class="keyword">void</span></code>.
<span class="bold"><b>Return type</b></span>: <tt class="computeroutput"><span class="keyword">void</span></tt>.
</p>
<p>
<span class="bold"><strong>Semantics</strong></span>: Always returns <code class="computeroutput"><span class="keyword">void</span></code>.
<span class="bold"><b>Semantics</b></span>: Always returns <tt class="computeroutput"><span class="keyword">void</span></tt>.
</p>
<p>
/sequence/intrinsic/swap.hpp&gt;

View File

@ -3,10 +3,10 @@
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>value_at</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.0">
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
<link rel="home" href="../../../../index.html" title="Chapter<65>1.<2E>Fusion 2.0">
<link rel="up" href="../metafunctions.html" title="Metafunctions">
<link rel="prev" href="at_c.html" title="at_c">
<link rel="previous" href="at_c.html" title="at_c">
<link rel="next" href="value_at_c.html" title="value_at_c">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@ -22,20 +22,23 @@
<div class="spirit-nav">
<a accesskey="p" href="at_c.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="value_at_c.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="value_at">
<div class="titlepage"><div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.metafunctions.value_at"></a><a class="link" href="value_at.html" title="value_at">value_at</a>
</h5></div></div></div>
<div class="section" lang="en">
<div class="titlepage">
<div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.metafunctions.value_at"></a><a href="value_at.html" title="value_at">value_at</a>
</h5></div></div>
<div></div>
</div>
<a name="fusion.sequence.intrinsic.metafunctions.value_at.description"></a><h6>
<a name="id602863"></a>
<a class="link" href="value_at.html#fusion.sequence.intrinsic.metafunctions.value_at.description">Description</a>
<a name="id465491"></a>
<a href="value_at.html#fusion.sequence.intrinsic.metafunctions.value_at.description">Description</a>
</h6>
<p>
Returns the actual type at a given index from the <a class="link" href="../../../sequence.html" title="Sequence">Sequence</a>.
Returns the actual type at a given index from the <a href="../../../sequence.html" title="Sequence">Sequence</a>.
</p>
<a name="fusion.sequence.intrinsic.metafunctions.value_at.synopsis"></a><h6>
<a name="id602891"></a>
<a class="link" href="value_at.html#fusion.sequence.intrinsic.metafunctions.value_at.synopsis">Synopsis</a>
<a name="id465529"></a>
<a href="value_at.html#fusion.sequence.intrinsic.metafunctions.value_at.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span>
<span class="keyword">typename</span> <span class="identifier">Seq</span><span class="special">,</span>
@ -46,93 +49,76 @@
<span class="special">};</span>
</pre>
<div class="table">
<a name="id602977"></a><p class="title"><b>Table<EFBFBD>1.27.<2E>Parameters</b></p>
<div class="table-contents"><table class="table" summary="Parameters">
<a name="id465644"></a><p class="title"><b>Table<EFBFBD>1.27.<2E>Parameters</b></p>
<table class="table" summary="Parameters">
<colgroup>
<col>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
<th><p>
Parameter
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Requirement
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Description
</p>
</th>
</p></th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">Seq</span></code>
</p>
</td>
<td>
<p>
A model of <a class="link" href="../../concepts/forward_sequence.html" title="Forward Sequence">Forward
<td><p>
<tt class="computeroutput"><span class="identifier">Seq</span></tt>
</p></td>
<td><p>
A model of <a href="../../concepts/forward_sequence.html" title="Forward
Sequence">Forward
Sequence</a>
</p>
</td>
<td>
<p>
</p></td>
<td><p>
Argument sequence
</p>
</td>
</p></td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">N</span></code>
</p>
</td>
<td>
<p>
<td><p>
<tt class="computeroutput"><span class="identifier">N</span></tt>
</p></td>
<td><p>
An <a href="http://www.boost.org/libs/mpl/doc/refmanual/integral-constant.html" target="_top">MPL
Integral Constant</a>
</p>
</td>
<td>
<p>
</p></td>
<td><p>
Index of element
</p>
</td>
</p></td>
</tr>
</tbody>
</table></div>
</table>
</div>
<br class="table-break"><a name="fusion.sequence.intrinsic.metafunctions.value_at.expression_semantics"></a><h6>
<a name="id603094"></a>
<a class="link" href="value_at.html#fusion.sequence.intrinsic.metafunctions.value_at.expression_semantics">Expression
<a name="fusion.sequence.intrinsic.metafunctions.value_at.expression_semantics"></a><h6>
<a name="id465789"></a>
<a href="value_at.html#fusion.sequence.intrinsic.metafunctions.value_at.expression_semantics">Expression
Semantics</a>
</h6>
<pre class="programlisting"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">value_at</span><span class="special">&lt;</span><span class="identifier">Seq</span><span class="special">,</span> <span class="identifier">N</span><span class="special">&gt;::</span><span class="identifier">type</span>
</pre>
<p>
<span class="bold"><strong>Return type</strong></span>: Any type.
<span class="bold"><b>Return type</b></span>: Any type.
</p>
<p>
<span class="bold"><strong>Semantics</strong></span>: Returns the actual type at
the <code class="computeroutput"><span class="identifier">N</span></code>th element of <code class="computeroutput"><span class="identifier">Seq</span></code>.
<span class="bold"><b>Semantics</b></span>: Returns the actual type at
the <tt class="computeroutput"><span class="identifier">N</span></tt>th element of <tt class="computeroutput"><span class="identifier">Seq</span></tt>.
</p>
<p>
/sequence/intrinsic/value_at.hpp&gt;
</p>
<a name="fusion.sequence.intrinsic.metafunctions.value_at.example"></a><h6>
<a name="id603182"></a>
<a class="link" href="value_at.html#fusion.sequence.intrinsic.metafunctions.value_at.example">Example</a>
<a name="id465918"></a>
<a href="value_at.html#fusion.sequence.intrinsic.metafunctions.value_at.example">Example</a>
</h6>
<pre class="programlisting"><span class="keyword">typedef</span> <a class="link" href="../../../container/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">,</span><span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">;</span>
<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span><a class="link" href="value_at.html" title="value_at"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">value_at</span></code></a><span class="special">&lt;</span><span class="identifier">vec</span><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">int_</span><span class="special">&lt;</span><span class="number">1</span><span class="special">&gt;</span> <span class="special">&gt;::</span><span class="identifier">type</span><span class="special">,</span> <span class="keyword">float</span><span class="special">&gt;));</span>
<pre class="programlisting"><span class="keyword">typedef</span> <a href="../../../container/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">float</span><span class="special">,</span><span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">;</span>
<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span><a href="value_at.html" title="value_at"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">value_at</span></tt></a><span class="special">&lt;</span><span class="identifier">vec</span><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">int_</span><span class="special">&lt;</span><span class="number">1</span><span class="special">&gt;</span> <span class="special">&gt;::</span><span class="identifier">type</span><span class="special">,</span> <span class="keyword">float</span><span class="special">&gt;));</span>
</pre>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>

View File

@ -3,10 +3,10 @@
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>value_at_c</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.0">
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
<link rel="home" href="../../../../index.html" title="Chapter<65>1.<2E>Fusion 2.0">
<link rel="up" href="../metafunctions.html" title="Metafunctions">
<link rel="prev" href="value_at.html" title="value_at">
<link rel="previous" href="value_at.html" title="value_at">
<link rel="next" href="has_key.html" title="has_key">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@ -22,20 +22,23 @@
<div class="spirit-nav">
<a accesskey="p" href="value_at.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="has_key.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="value_at_c">
<div class="titlepage"><div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.metafunctions.value_at_c"></a><a class="link" href="value_at_c.html" title="value_at_c">value_at_c</a>
</h5></div></div></div>
<div class="section" lang="en">
<div class="titlepage">
<div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.metafunctions.value_at_c"></a><a href="value_at_c.html" title="value_at_c">value_at_c</a>
</h5></div></div>
<div></div>
</div>
<a name="fusion.sequence.intrinsic.metafunctions.value_at_c.description"></a><h6>
<a name="id603362"></a>
<a class="link" href="value_at_c.html#fusion.sequence.intrinsic.metafunctions.value_at_c.description">Description</a>
<a name="id466177"></a>
<a href="value_at_c.html#fusion.sequence.intrinsic.metafunctions.value_at_c.description">Description</a>
</h6>
<p>
Returns the actual type at a given index from the <a class="link" href="../../../sequence.html" title="Sequence">Sequence</a>.
Returns the actual type at a given index from the <a href="../../../sequence.html" title="Sequence">Sequence</a>.
</p>
<a name="fusion.sequence.intrinsic.metafunctions.value_at_c.synopsis"></a><h6>
<a name="id603390"></a>
<a class="link" href="value_at_c.html#fusion.sequence.intrinsic.metafunctions.value_at_c.synopsis">Synopsis</a>
<a name="id466216"></a>
<a href="value_at_c.html#fusion.sequence.intrinsic.metafunctions.value_at_c.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span>
<span class="keyword">typename</span> <span class="identifier">Seq</span><span class="special">,</span>
@ -46,92 +49,75 @@
<span class="special">};</span>
</pre>
<div class="table">
<a name="id603476"></a><p class="title"><b>Table<EFBFBD>1.28.<2E>Parameters</b></p>
<div class="table-contents"><table class="table" summary="Parameters">
<a name="id466331"></a><p class="title"><b>Table<EFBFBD>1.28.<2E>Parameters</b></p>
<table class="table" summary="Parameters">
<colgroup>
<col>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
<th><p>
Parameter
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Requirement
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Description
</p>
</th>
</p></th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">Seq</span></code>
</p>
</td>
<td>
<p>
A model of <a class="link" href="../../concepts/forward_sequence.html" title="Forward Sequence">Forward
<td><p>
<tt class="computeroutput"><span class="identifier">Seq</span></tt>
</p></td>
<td><p>
A model of <a href="../../concepts/forward_sequence.html" title="Forward
Sequence">Forward
Sequence</a>
</p>
</td>
<td>
<p>
</p></td>
<td><p>
Argument sequence
</p>
</td>
</p></td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">M</span></code>
</p>
</td>
<td>
<p>
<td><p>
<tt class="computeroutput"><span class="identifier">M</span></tt>
</p></td>
<td><p>
Positive integer index
</p>
</td>
<td>
<p>
</p></td>
<td><p>
Index of element
</p>
</td>
</p></td>
</tr>
</tbody>
</table></div>
</table>
</div>
<br class="table-break"><a name="fusion.sequence.intrinsic.metafunctions.value_at_c.expression_semantics"></a><h6>
<a name="id603589"></a>
<a class="link" href="value_at_c.html#fusion.sequence.intrinsic.metafunctions.value_at_c.expression_semantics">Expression
<a name="fusion.sequence.intrinsic.metafunctions.value_at_c.expression_semantics"></a><h6>
<a name="id466468"></a>
<a href="value_at_c.html#fusion.sequence.intrinsic.metafunctions.value_at_c.expression_semantics">Expression
Semantics</a>
</h6>
<pre class="programlisting"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">value_at_c</span><span class="special">&lt;</span><span class="identifier">Seq</span><span class="special">,</span> <span class="identifier">M</span><span class="special">&gt;::</span><span class="identifier">type</span>
</pre>
<p>
<span class="bold"><strong>Return type</strong></span>: Any type
<span class="bold"><b>Return type</b></span>: Any type
</p>
<p>
<span class="bold"><strong>Semantics</strong></span>: Returns the actual type at
the <code class="computeroutput"><span class="identifier">M</span></code>th element of <code class="computeroutput"><span class="identifier">Seq</span></code>.
<span class="bold"><b>Semantics</b></span>: Returns the actual type at
the <tt class="computeroutput"><span class="identifier">M</span></tt>th element of <tt class="computeroutput"><span class="identifier">Seq</span></tt>.
</p>
<p>
/sequence/intrinsic/value_at.hpp&gt;
</p>
<a name="fusion.sequence.intrinsic.metafunctions.value_at_c.example"></a><h6>
<a name="id603678"></a>
<a class="link" href="value_at_c.html#fusion.sequence.intrinsic.metafunctions.value_at_c.example">Example</a>
<a name="id466598"></a>
<a href="value_at_c.html#fusion.sequence.intrinsic.metafunctions.value_at_c.example">Example</a>
</h6>
<pre class="programlisting"><span class="keyword">typedef</span> <a class="link" href="../../../container/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">,</span><span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">;</span>
<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span><a class="link" href="value_at_c.html" title="value_at_c"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">value_at_c</span></code></a><span class="special">&lt;</span><span class="identifier">vec</span><span class="special">,</span> <span class="number">1</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">,</span> <span class="keyword">float</span><span class="special">&gt;));</span>
<pre class="programlisting"><span class="keyword">typedef</span> <a href="../../../container/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span><span class="keyword">float</span><span class="special">,</span><span class="keyword">char</span><span class="special">&gt;</span> <span class="identifier">vec</span><span class="special">;</span>
<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span><a href="value_at_c.html" title="value_at_c"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">value_at_c</span></tt></a><span class="special">&lt;</span><span class="identifier">vec</span><span class="special">,</span> <span class="number">1</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">,</span> <span class="keyword">float</span><span class="special">&gt;));</span>
</pre>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>

View File

@ -3,10 +3,10 @@
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>value_at_key</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.0">
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
<link rel="home" href="../../../../index.html" title="Chapter<65>1.<2E>Fusion 2.0">
<link rel="up" href="../metafunctions.html" title="Metafunctions">
<link rel="prev" href="at_key.html" title="at_key">
<link rel="previous" href="at_key.html" title="at_key">
<link rel="next" href="swap.html" title="swap">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@ -22,20 +22,23 @@
<div class="spirit-nav">
<a accesskey="p" href="at_key.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../metafunctions.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="swap.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="value_at_key">
<div class="titlepage"><div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.metafunctions.value_at_key"></a><a class="link" href="value_at_key.html" title="value_at_key">value_at_key</a>
</h5></div></div></div>
<div class="section" lang="en">
<div class="titlepage">
<div><div><h5 class="title">
<a name="fusion.sequence.intrinsic.metafunctions.value_at_key"></a><a href="value_at_key.html" title="value_at_key">value_at_key</a>
</h5></div></div>
<div></div>
</div>
<a name="fusion.sequence.intrinsic.metafunctions.value_at_key.description"></a><h6>
<a name="id605631"></a>
<a class="link" href="value_at_key.html#fusion.sequence.intrinsic.metafunctions.value_at_key.description">Description</a>
<a name="id468523"></a>
<a href="value_at_key.html#fusion.sequence.intrinsic.metafunctions.value_at_key.description">Description</a>
</h6>
<p>
Returns the actual element type associated with a Key from the <a class="link" href="../../../sequence.html" title="Sequence">Sequence</a>.
Returns the actual element type associated with a Key from the <a href="../../../sequence.html" title="Sequence">Sequence</a>.
</p>
<a name="fusion.sequence.intrinsic.metafunctions.value_at_key.synopsis"></a><h6>
<a name="id605655"></a>
<a class="link" href="value_at_key.html#fusion.sequence.intrinsic.metafunctions.value_at_key.synopsis">Synopsis</a>
<a name="id468561"></a>
<a href="value_at_key.html#fusion.sequence.intrinsic.metafunctions.value_at_key.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span>
<span class="keyword">typename</span> <span class="identifier">Seq</span><span class="special">,</span>
@ -46,93 +49,76 @@
<span class="special">};</span>
</pre>
<div class="table">
<a name="id605741"></a><p class="title"><b>Table<EFBFBD>1.31.<2E>Parameters</b></p>
<div class="table-contents"><table class="table" summary="Parameters">
<a name="id468676"></a><p class="title"><b>Table<EFBFBD>1.31.<2E>Parameters</b></p>
<table class="table" summary="Parameters">
<colgroup>
<col>
<col>
<col>
</colgroup>
<thead><tr>
<th>
<p>
<th><p>
Parameter
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Requirement
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Description
</p>
</th>
</p></th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">Seq</span></code>
</p>
</td>
<td>
<p>
A model of <a class="link" href="../../concepts/forward_sequence.html" title="Forward Sequence">Forward
<td><p>
<tt class="computeroutput"><span class="identifier">Seq</span></tt>
</p></td>
<td><p>
A model of <a href="../../concepts/forward_sequence.html" title="Forward
Sequence">Forward
Sequence</a>
</p>
</td>
<td>
<p>
</p></td>
<td><p>
Argument sequence
</p>
</td>
</p></td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">Key</span></code>
</p>
</td>
<td>
<p>
<td><p>
<tt class="computeroutput"><span class="identifier">Key</span></tt>
</p></td>
<td><p>
Any type
</p>
</td>
<td>
<p>
</p></td>
<td><p>
Key type
</p>
</td>
</p></td>
</tr>
</tbody>
</table></div>
</table>
</div>
<br class="table-break"><a name="fusion.sequence.intrinsic.metafunctions.value_at_key.expression_semantics"></a><h6>
<a name="id605853"></a>
<a class="link" href="value_at_key.html#fusion.sequence.intrinsic.metafunctions.value_at_key.expression_semantics">Expression
<a name="fusion.sequence.intrinsic.metafunctions.value_at_key.expression_semantics"></a><h6>
<a name="id468815"></a>
<a href="value_at_key.html#fusion.sequence.intrinsic.metafunctions.value_at_key.expression_semantics">Expression
Semantics</a>
</h6>
<pre class="programlisting"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">value_at_key</span><span class="special">&lt;</span><span class="identifier">Seq</span><span class="special">,</span> <span class="identifier">Key</span><span class="special">&gt;::</span><span class="identifier">type</span>
</pre>
<p>
<span class="bold"><strong>Return type</strong></span>: Any type.
<span class="bold"><b>Return type</b></span>: Any type.
</p>
<p>
<span class="bold"><strong>Semantics</strong></span>: Returns the actual element
type associated with key type <code class="computeroutput"><span class="identifier">Key</span></code>
in <code class="computeroutput"><span class="identifier">Seq</span></code>.
<span class="bold"><b>Semantics</b></span>: Returns the actual element
type associated with key type <tt class="computeroutput"><span class="identifier">Key</span></tt>
in <tt class="computeroutput"><span class="identifier">Seq</span></tt>.
</p>
<p>
/sequence/intrinsic/value_at_key.hpp&gt;
</p>
<a name="fusion.sequence.intrinsic.metafunctions.value_at_key.example"></a><h6>
<a name="id605942"></a>
<a class="link" href="value_at_key.html#fusion.sequence.intrinsic.metafunctions.value_at_key.example">Example</a>
<a name="id468944"></a>
<a href="value_at_key.html#fusion.sequence.intrinsic.metafunctions.value_at_key.example">Example</a>
</h6>
<pre class="programlisting"><span class="keyword">typedef</span> <a class="link" href="../../../container/map.html" title="map"><code class="computeroutput"><span class="identifier">map</span></code></a><span class="special">&lt;</span><a class="link" href="../../../support/pair.html" title="pair"><code class="computeroutput"><span class="identifier">pair</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> <a class="link" href="../../../support/pair.html" title="pair"><code class="computeroutput"><span class="identifier">pair</span></code></a><span class="special">&lt;</span><span class="keyword">char</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&gt;,</span> <a class="link" href="../../../support/pair.html" title="pair"><code class="computeroutput"><span class="identifier">pair</span></code></a><span class="special">&lt;</span><span class="keyword">double</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&gt;</span> <span class="special">&gt;</span> <span class="identifier">mymap</span><span class="special">;</span>
<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span><a class="link" href="at_key.html" title="at_key"><code class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at_key</span></code></a><span class="special">&lt;</span><span class="identifier">mymap</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&gt;));</span>
<pre class="programlisting"><span class="keyword">typedef</span> <a href="../../../container/map.html" title="map"><tt class="computeroutput"><span class="identifier">map</span></tt></a><span class="special">&lt;</span><a href="../../../support/pair.html" title="pair"><tt class="computeroutput"><span class="identifier">pair</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> <a href="../../../support/pair.html" title="pair"><tt class="computeroutput"><span class="identifier">pair</span></tt></a><span class="special">&lt;</span><span class="keyword">char</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&gt;,</span> <a href="../../../support/pair.html" title="pair"><tt class="computeroutput"><span class="identifier">pair</span></tt></a><span class="special">&lt;</span><span class="keyword">double</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&gt;</span> <span class="special">&gt;</span> <span class="identifier">mymap</span><span class="special">;</span>
<span class="identifier">BOOST_MPL_ASSERT</span><span class="special">((</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">is_same</span><span class="special">&lt;</span><a href="at_key.html" title="at_key"><tt class="computeroutput"><span class="identifier">result_of</span><span class="special">::</span><span class="identifier">at_key</span></tt></a><span class="special">&lt;</span><span class="identifier">mymap</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&gt;::</span><span class="identifier">type</span><span class="special">,</span> <span class="keyword">char</span><span class="special">&gt;));</span>
</pre>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>

View File

@ -3,10 +3,10 @@
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Operator</title>
<link rel="stylesheet" href="../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.0">
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
<link rel="home" href="../../index.html" title="Chapter<65>1.<2E>Fusion 2.0">
<link rel="up" href="../sequence.html" title="Sequence">
<link rel="prev" href="intrinsic/metafunctions/swap.html" title="swap">
<link rel="previous" href="intrinsic/metafunctions/swap.html" title="swap">
<link rel="next" href="operator/i_o.html" title="I/O">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@ -22,16 +22,19 @@
<div class="spirit-nav">
<a accesskey="p" href="intrinsic/metafunctions/swap.html"><img src="../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../sequence.html"><img src="../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="operator/i_o.html"><img src="../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Operator">
<div class="titlepage"><div><div><h3 class="title">
<a name="fusion.sequence.operator"></a><a class="link" href="operator.html" title="Operator">Operator</a>
</h3></div></div></div>
<div class="section" lang="en">
<div class="titlepage">
<div><div><h3 class="title">
<a name="fusion.sequence.operator"></a><a href="operator.html" title="Operator">Operator</a>
</h3></div></div>
<div></div>
</div>
<div class="toc"><dl>
<dt><span class="section"><a href="operator/i_o.html">I/O</a></span></dt>
<dt><span class="section"><a href="operator/comparison.html">Comparison</a></span></dt>
</dl></div>
<p>
These operators, like the <a class="link" href="../algorithm.html" title="Algorithm">Algorithms</a>,
These operators, like the <a href="../algorithm.html" title="Algorithm">Algorithms</a>,
work generically on all Fusion sequences. All conforming Fusion sequences
automatically get these operators for free.
</p>

View File

@ -3,10 +3,10 @@
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Comparison</title>
<link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.0">
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
<link rel="home" href="../../../index.html" title="Chapter<65>1.<2E>Fusion 2.0">
<link rel="up" href="../operator.html" title="Operator">
<link rel="prev" href="i_o/out.html" title="out">
<link rel="previous" href="i_o/out.html" title="out">
<link rel="next" href="comparison/equal.html" title="equal">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@ -22,10 +22,13 @@
<div class="spirit-nav">
<a accesskey="p" href="i_o/out.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../operator.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="comparison/equal.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="Comparison">
<div class="titlepage"><div><div><h4 class="title">
<a name="fusion.sequence.operator.comparison"></a><a class="link" href="comparison.html" title="Comparison">Comparison</a>
</h4></div></div></div>
<div class="section" lang="en">
<div class="titlepage">
<div><div><h4 class="title">
<a name="fusion.sequence.operator.comparison"></a><a href="comparison.html" title="Comparison">Comparison</a>
</h4></div></div>
<div></div>
</div>
<div class="toc"><dl>
<dt><span class="section"><a href="comparison/equal.html">equal</a></span></dt>
<dt><span class="section"><a href="comparison/not_equal.html">not
@ -40,18 +43,18 @@
than equal</a></span></dt>
</dl></div>
<p>
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
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
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.sequence.operator.comparison.header"></a><h6>
<a name="id609047"></a>
<a class="link" href="comparison.html#fusion.sequence.operator.comparison.header">Header</a>
</h6>
<a name="fusion.sequence.operator.comparison.header"></a><h5>
<a name="id472612"></a>
<a href="comparison.html#fusion.sequence.operator.comparison.header">Header</a>
</h5>
<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">hpp</span><span class="special">&gt;</span>
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">comparison</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
</pre>

View File

@ -3,11 +3,12 @@
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>equal</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.0">
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
<link rel="home" 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">
<link rel="next" href="not_equal.html" title="not equal">
<link rel="previous" href="../comparison.html" title="Comparison">
<link rel="next" href="not_equal.html" title="not
equal">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
@ -22,28 +23,31 @@
<div class="spirit-nav">
<a accesskey="p" href="../comparison.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../comparison.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="not_equal.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="equal">
<div class="titlepage"><div><div><h5 class="title">
<a name="fusion.sequence.operator.comparison.equal"></a><a class="link" href="equal.html" title="equal">equal</a>
</h5></div></div></div>
<div class="section" lang="en">
<div class="titlepage">
<div><div><h5 class="title">
<a name="fusion.sequence.operator.comparison.equal"></a><a href="equal.html" title="equal">equal</a>
</h5></div></div>
<div></div>
</div>
<a name="fusion.sequence.operator.comparison.equal.description"></a><h6>
<a name="id609164"></a>
<a class="link" href="equal.html#fusion.sequence.operator.comparison.equal.description">Description</a>
<a name="id472785"></a>
<a href="equal.html#fusion.sequence.operator.comparison.equal.description">Description</a>
</h6>
<p>
Compare two sequences for equality.
</p>
<a name="fusion.sequence.operator.comparison.equal.synopsis"></a><h6>
<a name="id609182"></a>
<a class="link" href="equal.html#fusion.sequence.operator.comparison.equal.synopsis">Synopsis</a>
<a name="id472815"></a>
<a href="equal.html#fusion.sequence.operator.comparison.equal.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Seq1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Seq2</span><span class="special">&gt;</span>
<span class="keyword">bool</span>
<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.sequence.operator.comparison.equal.parameters"></a><h6>
<a name="id609289"></a>
<a class="link" href="equal.html#fusion.sequence.operator.comparison.equal.parameters">Parameters</a>
<a name="id472966"></a>
<a href="equal.html#fusion.sequence.operator.comparison.equal.parameters">Parameters</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@ -52,59 +56,47 @@
<col>
</colgroup>
<thead><tr>
<th>
<p>
<th><p>
Parameter
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Requirement
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Description
</p>
</th>
</p></th>
</tr></thead>
<tbody><tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">a</span><span class="special">,</span>
<span class="identifier">b</span></code>
</p>
</td>
<td>
<p>
Instances of <a class="link" href="../../../sequence.html" title="Sequence">Sequence</a>
</p>
</td>
<td>
<p>
<a class="link" href="../../../sequence.html" title="Sequence">Sequence</a>(s) to compare
</p>
</td>
<td><p>
<tt class="computeroutput"><span class="identifier">a</span><span class="special">,</span>
<span class="identifier">b</span></tt>
</p></td>
<td><p>
Instances of <a href="../../../sequence.html" title="Sequence">Sequence</a>
</p></td>
<td><p>
<a href="../../../sequence.html" title="Sequence">Sequence</a>(s) to compare
</p></td>
</tr></tbody>
</table></div>
<a name="fusion.sequence.operator.comparison.equal.expression_semantics"></a><h6>
<a name="id609392"></a>
<a class="link" href="equal.html#fusion.sequence.operator.comparison.equal.expression_semantics">Expression
<a name="id473097"></a>
<a href="equal.html#fusion.sequence.operator.comparison.equal.expression_semantics">Expression
Semantics</a>
</h6>
<pre class="programlisting"><span class="identifier">a</span> <span class="special">==</span> <span class="identifier">b</span>
</pre>
<p>
<span class="bold"><strong>Return type</strong></span>: <code class="computeroutput"><span class="keyword">bool</span></code>
<span class="bold"><b>Return type</b></span>: <tt class="computeroutput"><span class="keyword">bool</span></tt>
</p>
<p>
<span class="bold"><strong>Requirements</strong></span>:
<span class="bold"><b>Requirements</b></span>:
</p>
<p>
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
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
type that is convertible to bool.
</p>
<p>
@ -112,29 +104,29 @@
compile time error.
</p>
<p>
<span class="bold"><strong>Semantics</strong></span>:
<span class="bold"><b>Semantics</b></span>:
</p>
<p>
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
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
<span class="underline">_sequence</span>_s, e and f, e == f returns
true.
</p>
<a name="fusion.sequence.operator.comparison.equal.header"></a><h6>
<a name="id609566"></a>
<a class="link" href="equal.html#fusion.sequence.operator.comparison.equal.header">Header</a>
<a name="id473355"></a>
<a href="equal.html#fusion.sequence.operator.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>
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">equal_to</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
</pre>
<a name="fusion.sequence.operator.comparison.equal.example"></a><h6>
<a name="id609682"></a>
<a class="link" href="equal.html#fusion.sequence.operator.comparison.equal.example">Example</a>
<a name="id473522"></a>
<a href="equal.html#fusion.sequence.operator.comparison.equal.example">Example</a>
</h6>
<pre class="programlisting"><a class="link" href="../../../container/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 class="link" href="../../../container/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>
<pre class="programlisting"><a href="../../../container/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">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="../../../container/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">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

@ -1,13 +1,16 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>greater than</title>
<title>greater
than</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.0">
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
<link rel="home" 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 than equal">
<link rel="next" href="greater_than_equal.html" title="greater than equal">
<link rel="previous" href="less_than_equal.html" title="less
than equal">
<link rel="next" href="greater_than_equal.html" title="greater
than equal">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
@ -22,25 +25,29 @@
<div class="spirit-nav">
<a accesskey="p" href="less_than_equal.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../comparison.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="greater_than_equal.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="greater than">
<div class="titlepage"><div><div><h5 class="title">
<a name="fusion.sequence.operator.comparison.greater_than"></a><a class="link" href="greater_than.html" title="greater than">greater
<div class="section" lang="en">
<div class="titlepage">
<div><div><h5 class="title">
<a name="fusion.sequence.operator.comparison.greater_than"></a><a href="greater_than.html" title="greater
than">greater
than</a>
</h5></div></div></div>
</h5></div></div>
<div></div>
</div>
<p>
Lexicographically compare two sequences.
</p>
<a name="fusion.sequence.operator.comparison.greater_than.synopsis"></a><h6>
<a name="id613133"></a>
<a class="link" href="greater_than.html#fusion.sequence.operator.comparison.greater_than.synopsis">Synopsis</a>
<a name="id476656"></a>
<a href="greater_than.html#fusion.sequence.operator.comparison.greater_than.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Seq1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Seq2</span><span class="special">&gt;</span>
<span class="keyword">bool</span>
<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.sequence.operator.comparison.greater_than.parameters"></a><h6>
<a name="id613245"></a>
<a class="link" href="greater_than.html#fusion.sequence.operator.comparison.greater_than.parameters">Parameters</a>
<a name="id476808"></a>
<a href="greater_than.html#fusion.sequence.operator.comparison.greater_than.parameters">Parameters</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@ -49,59 +56,47 @@
<col>
</colgroup>
<thead><tr>
<th>
<p>
<th><p>
Parameter
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Requirement
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Description
</p>
</th>
</p></th>
</tr></thead>
<tbody><tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">a</span><span class="special">,</span>
<span class="identifier">b</span></code>
</p>
</td>
<td>
<p>
Instances of <a class="link" href="../../../sequence.html" title="Sequence">Sequence</a>
</p>
</td>
<td>
<p>
<a class="link" href="../../../sequence.html" title="Sequence">Sequence</a>(s) to compare
</p>
</td>
<td><p>
<tt class="computeroutput"><span class="identifier">a</span><span class="special">,</span>
<span class="identifier">b</span></tt>
</p></td>
<td><p>
Instances of <a href="../../../sequence.html" title="Sequence">Sequence</a>
</p></td>
<td><p>
<a href="../../../sequence.html" title="Sequence">Sequence</a>(s) to compare
</p></td>
</tr></tbody>
</table></div>
<a name="fusion.sequence.operator.comparison.greater_than.expression_semantics"></a><h6>
<a name="id613348"></a>
<a class="link" href="greater_than.html#fusion.sequence.operator.comparison.greater_than.expression_semantics">Expression
<a name="id476940"></a>
<a href="greater_than.html#fusion.sequence.operator.comparison.greater_than.expression_semantics">Expression
Semantics</a>
</h6>
<pre class="programlisting"><span class="identifier">a</span> <span class="special">&gt;</span> <span class="identifier">b</span>
</pre>
<p>
<span class="bold"><strong>Return type</strong></span>: <code class="computeroutput"><span class="keyword">bool</span></code>
<span class="bold"><b>Return type</b></span>: <tt class="computeroutput"><span class="keyword">bool</span></tt>
</p>
<p>
<span class="bold"><strong>Requirements</strong></span>:
<span class="bold"><b>Requirements</b></span>:
</p>
<p>
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
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
type that is convertible to bool.
</p>
<p>
@ -109,22 +104,22 @@
compile time error.
</p>
<p>
<span class="bold"><strong>Semantics</strong></span>: Returns b &lt; a.
<span class="bold"><b>Semantics</b></span>: Returns b &lt; a.
</p>
<a name="fusion.sequence.operator.comparison.greater_than.header"></a><h6>
<a name="id613464"></a>
<a class="link" href="greater_than.html#fusion.sequence.operator.comparison.greater_than.header">Header</a>
<a name="id477117"></a>
<a href="greater_than.html#fusion.sequence.operator.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>
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">less_equal</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
</pre>
<a name="fusion.sequence.operator.comparison.greater_than.example"></a><h6>
<a name="id613582"></a>
<a class="link" href="greater_than.html#fusion.sequence.operator.comparison.greater_than.example">Example</a>
<a name="id477284"></a>
<a href="greater_than.html#fusion.sequence.operator.comparison.greater_than.example">Example</a>
</h6>
<pre class="programlisting"><a class="link" href="../../../container/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 class="link" href="../../../container/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 class="link" href="../../../container/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>
<pre class="programlisting"><a href="../../../container/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">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="../../../container/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="../../../container/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>
<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

@ -1,12 +1,14 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>greater than equal</title>
<title>greater
than equal</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.0">
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
<link rel="home" 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 than">
<link rel="previous" href="greater_than.html" title="greater
than">
<link rel="next" href="../../../container.html" title="Container">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@ -22,25 +24,29 @@
<div class="spirit-nav">
<a accesskey="p" href="greater_than.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../comparison.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../../../container.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="greater than equal">
<div class="titlepage"><div><div><h5 class="title">
<a name="fusion.sequence.operator.comparison.greater_than_equal"></a><a class="link" href="greater_than_equal.html" title="greater than equal">greater
<div class="section" lang="en">
<div class="titlepage">
<div><div><h5 class="title">
<a name="fusion.sequence.operator.comparison.greater_than_equal"></a><a href="greater_than_equal.html" title="greater
than equal">greater
than equal</a>
</h5></div></div></div>
</h5></div></div>
<div></div>
</div>
<p>
Lexicographically compare two sequences.
</p>
<a name="fusion.sequence.operator.comparison.greater_than_equal.synopsis"></a><h6>
<a name="id613827"></a>
<a class="link" href="greater_than_equal.html#fusion.sequence.operator.comparison.greater_than_equal.synopsis">Synopsis</a>
<a name="id477625"></a>
<a href="greater_than_equal.html#fusion.sequence.operator.comparison.greater_than_equal.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Seq1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Seq2</span><span class="special">&gt;</span>
<span class="keyword">bool</span>
<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.sequence.operator.comparison.greater_than_equal.parameters"></a><h6>
<a name="id613937"></a>
<a class="link" href="greater_than_equal.html#fusion.sequence.operator.comparison.greater_than_equal.parameters">Parameters</a>
<a name="id477779"></a>
<a href="greater_than_equal.html#fusion.sequence.operator.comparison.greater_than_equal.parameters">Parameters</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@ -49,59 +55,47 @@
<col>
</colgroup>
<thead><tr>
<th>
<p>
<th><p>
Parameter
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Requirement
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Description
</p>
</th>
</p></th>
</tr></thead>
<tbody><tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">a</span><span class="special">,</span>
<span class="identifier">b</span></code>
</p>
</td>
<td>
<p>
Instances of <a class="link" href="../../../sequence.html" title="Sequence">Sequence</a>
</p>
</td>
<td>
<p>
<a class="link" href="../../../sequence.html" title="Sequence">Sequence</a>(s) to compare
</p>
</td>
<td><p>
<tt class="computeroutput"><span class="identifier">a</span><span class="special">,</span>
<span class="identifier">b</span></tt>
</p></td>
<td><p>
Instances of <a href="../../../sequence.html" title="Sequence">Sequence</a>
</p></td>
<td><p>
<a href="../../../sequence.html" title="Sequence">Sequence</a>(s) to compare
</p></td>
</tr></tbody>
</table></div>
<a name="fusion.sequence.operator.comparison.greater_than_equal.expression_semantics"></a><h6>
<a name="id614037"></a>
<a class="link" href="greater_than_equal.html#fusion.sequence.operator.comparison.greater_than_equal.expression_semantics">Expression
<a name="id477911"></a>
<a href="greater_than_equal.html#fusion.sequence.operator.comparison.greater_than_equal.expression_semantics">Expression
Semantics</a>
</h6>
<pre class="programlisting"><span class="identifier">a</span> <span class="special">&gt;=</span> <span class="identifier">b</span>
</pre>
<p>
<span class="bold"><strong>Return type</strong></span>: <code class="computeroutput"><span class="keyword">bool</span></code>
<span class="bold"><b>Return type</b></span>: <tt class="computeroutput"><span class="keyword">bool</span></tt>
</p>
<p>
<span class="bold"><strong>Requirements</strong></span>:
<span class="bold"><b>Requirements</b></span>:
</p>
<p>
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
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
type that is convertible to bool.
</p>
<p>
@ -109,22 +103,22 @@
compile time error.
</p>
<p>
<span class="bold"><strong>Semantics</strong></span>: Returns !(a &lt; b).
<span class="bold"><b>Semantics</b></span>: Returns !(a &lt; b).
</p>
<a name="fusion.sequence.operator.comparison.greater_than_equal.header"></a><h6>
<a name="id614156"></a>
<a class="link" href="greater_than_equal.html#fusion.sequence.operator.comparison.greater_than_equal.header">Header</a>
<a name="id478087"></a>
<a href="greater_than_equal.html#fusion.sequence.operator.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>
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">greater_equal</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
</pre>
<a name="fusion.sequence.operator.comparison.greater_than_equal.example"></a><h6>
<a name="id614276"></a>
<a class="link" href="greater_than_equal.html#fusion.sequence.operator.comparison.greater_than_equal.example">Example</a>
<a name="id478255"></a>
<a href="greater_than_equal.html#fusion.sequence.operator.comparison.greater_than_equal.example">Example</a>
</h6>
<pre class="programlisting"><a class="link" href="../../../container/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 class="link" href="../../../container/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 class="link" href="../../../container/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>
<pre class="programlisting"><a href="../../../container/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">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="../../../container/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="../../../container/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>
<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

@ -1,13 +1,16 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>less than</title>
<title>less
than</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.0">
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
<link rel="home" 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 equal">
<link rel="next" href="less_than_equal.html" title="less than equal">
<link rel="previous" href="not_equal.html" title="not
equal">
<link rel="next" href="less_than_equal.html" title="less
than equal">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
@ -22,25 +25,29 @@
<div class="spirit-nav">
<a accesskey="p" href="not_equal.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../comparison.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="less_than_equal.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="less than">
<div class="titlepage"><div><div><h5 class="title">
<a name="fusion.sequence.operator.comparison.less_than"></a><a class="link" href="less_than.html" title="less than">less
<div class="section" lang="en">
<div class="titlepage">
<div><div><h5 class="title">
<a name="fusion.sequence.operator.comparison.less_than"></a><a href="less_than.html" title="less
than">less
than</a>
</h5></div></div></div>
</h5></div></div>
<div></div>
</div>
<p>
Lexicographically compare two sequences.
</p>
<a name="fusion.sequence.operator.comparison.less_than.synopsis"></a><h6>
<a name="id611734"></a>
<a class="link" href="less_than.html#fusion.sequence.operator.comparison.less_than.synopsis">Synopsis</a>
<a name="id474689"></a>
<a href="less_than.html#fusion.sequence.operator.comparison.less_than.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Seq1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Seq2</span><span class="special">&gt;</span>
<span class="keyword">bool</span>
<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.sequence.operator.comparison.less_than.parameters"></a><h6>
<a name="id611843"></a>
<a class="link" href="less_than.html#fusion.sequence.operator.comparison.less_than.parameters">Parameters</a>
<a name="id474841"></a>
<a href="less_than.html#fusion.sequence.operator.comparison.less_than.parameters">Parameters</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@ -49,59 +56,47 @@
<col>
</colgroup>
<thead><tr>
<th>
<p>
<th><p>
Parameter
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Requirement
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Description
</p>
</th>
</p></th>
</tr></thead>
<tbody><tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">a</span><span class="special">,</span>
<span class="identifier">b</span></code>
</p>
</td>
<td>
<p>
Instances of <a class="link" href="../../../sequence.html" title="Sequence">Sequence</a>
</p>
</td>
<td>
<p>
<a class="link" href="../../../sequence.html" title="Sequence">Sequence</a>(s) to compare
</p>
</td>
<td><p>
<tt class="computeroutput"><span class="identifier">a</span><span class="special">,</span>
<span class="identifier">b</span></tt>
</p></td>
<td><p>
Instances of <a href="../../../sequence.html" title="Sequence">Sequence</a>
</p></td>
<td><p>
<a href="../../../sequence.html" title="Sequence">Sequence</a>(s) to compare
</p></td>
</tr></tbody>
</table></div>
<a name="fusion.sequence.operator.comparison.less_than.expression_semantics"></a><h6>
<a name="id611946"></a>
<a class="link" href="less_than.html#fusion.sequence.operator.comparison.less_than.expression_semantics">Expression
<a name="id474973"></a>
<a href="less_than.html#fusion.sequence.operator.comparison.less_than.expression_semantics">Expression
Semantics</a>
</h6>
<pre class="programlisting"><span class="identifier">a</span> <span class="special">&lt;</span> <span class="identifier">b</span>
</pre>
<p>
<span class="bold"><strong>Return type</strong></span>: <code class="computeroutput"><span class="keyword">bool</span></code>
<span class="bold"><b>Return type</b></span>: <tt class="computeroutput"><span class="keyword">bool</span></tt>
</p>
<p>
<span class="bold"><strong>Requirements</strong></span>:
<span class="bold"><b>Requirements</b></span>:
</p>
<p>
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
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
type that is convertible to bool.
</p>
<p>
@ -109,24 +104,24 @@
compile time error.
</p>
<p>
<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>.
<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>.
</p>
<a name="fusion.sequence.operator.comparison.less_than.header"></a><h6>
<a name="id612077"></a>
<a class="link" href="less_than.html#fusion.sequence.operator.comparison.less_than.header">Header</a>
<a name="id475172"></a>
<a href="less_than.html#fusion.sequence.operator.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>
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">less</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
</pre>
<a name="fusion.sequence.operator.comparison.less_than.example"></a><h6>
<a name="id612192"></a>
<a class="link" href="less_than.html#fusion.sequence.operator.comparison.less_than.example">Example</a>
<a name="id475339"></a>
<a href="less_than.html#fusion.sequence.operator.comparison.less_than.example">Example</a>
</h6>
<pre class="programlisting"><a class="link" href="../../../container/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 class="link" href="../../../container/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 class="link" href="../../../container/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>
<pre class="programlisting"><a href="../../../container/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">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="../../../container/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="../../../container/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>
<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

@ -1,13 +1,16 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>less than equal</title>
<title>less
than equal</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.0">
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
<link rel="home" 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 than">
<link rel="next" href="greater_than.html" title="greater than">
<link rel="previous" href="less_than.html" title="less
than">
<link rel="next" href="greater_than.html" title="greater
than">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
@ -22,25 +25,29 @@
<div class="spirit-nav">
<a accesskey="p" href="less_than.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../comparison.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="greater_than.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="less than equal">
<div class="titlepage"><div><div><h5 class="title">
<a name="fusion.sequence.operator.comparison.less_than_equal"></a><a class="link" href="less_than_equal.html" title="less than equal">less
<div class="section" lang="en">
<div class="titlepage">
<div><div><h5 class="title">
<a name="fusion.sequence.operator.comparison.less_than_equal"></a><a href="less_than_equal.html" title="less
than equal">less
than equal</a>
</h5></div></div></div>
</h5></div></div>
<div></div>
</div>
<p>
Lexicographically compare two sequences.
</p>
<a name="fusion.sequence.operator.comparison.less_than_equal.synopsis"></a><h6>
<a name="id612435"></a>
<a class="link" href="less_than_equal.html#fusion.sequence.operator.comparison.less_than_equal.synopsis">Synopsis</a>
<a name="id475682"></a>
<a href="less_than_equal.html#fusion.sequence.operator.comparison.less_than_equal.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Seq1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Seq2</span><span class="special">&gt;</span>
<span class="keyword">bool</span>
<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.sequence.operator.comparison.less_than_equal.parameters"></a><h6>
<a name="id612546"></a>
<a class="link" href="less_than_equal.html#fusion.sequence.operator.comparison.less_than_equal.parameters">Parameters</a>
<a name="id475835"></a>
<a href="less_than_equal.html#fusion.sequence.operator.comparison.less_than_equal.parameters">Parameters</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@ -49,59 +56,47 @@
<col>
</colgroup>
<thead><tr>
<th>
<p>
<th><p>
Parameter
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Requirement
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Description
</p>
</th>
</p></th>
</tr></thead>
<tbody><tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">a</span><span class="special">,</span>
<span class="identifier">b</span></code>
</p>
</td>
<td>
<p>
Instances of <a class="link" href="../../../sequence.html" title="Sequence">Sequence</a>
</p>
</td>
<td>
<p>
<a class="link" href="../../../sequence.html" title="Sequence">Sequence</a>(s) to compare
</p>
</td>
<td><p>
<tt class="computeroutput"><span class="identifier">a</span><span class="special">,</span>
<span class="identifier">b</span></tt>
</p></td>
<td><p>
Instances of <a href="../../../sequence.html" title="Sequence">Sequence</a>
</p></td>
<td><p>
<a href="../../../sequence.html" title="Sequence">Sequence</a>(s) to compare
</p></td>
</tr></tbody>
</table></div>
<a name="fusion.sequence.operator.comparison.less_than_equal.expression_semantics"></a><h6>
<a name="id612650"></a>
<a class="link" href="less_than_equal.html#fusion.sequence.operator.comparison.less_than_equal.expression_semantics">Expression
<a name="id475968"></a>
<a href="less_than_equal.html#fusion.sequence.operator.comparison.less_than_equal.expression_semantics">Expression
Semantics</a>
</h6>
<pre class="programlisting"><span class="identifier">a</span> <span class="special">&lt;=</span> <span class="identifier">b</span>
</pre>
<p>
<span class="bold"><strong>Return type</strong></span>: <code class="computeroutput"><span class="keyword">bool</span></code>
<span class="bold"><b>Return type</b></span>: <tt class="computeroutput"><span class="keyword">bool</span></tt>
</p>
<p>
<span class="bold"><strong>Requirements</strong></span>:
<span class="bold"><b>Requirements</b></span>:
</p>
<p>
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
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
type that is convertible to bool.
</p>
<p>
@ -109,22 +104,22 @@
compile time error.
</p>
<p>
<span class="bold"><strong>Semantics</strong></span>: Returns !(b &lt; a).
<span class="bold"><b>Semantics</b></span>: Returns !(b &lt; a).
</p>
<a name="fusion.sequence.operator.comparison.less_than_equal.header"></a><h6>
<a name="id612768"></a>
<a class="link" href="less_than_equal.html#fusion.sequence.operator.comparison.less_than_equal.header">Header</a>
<a name="id476144"></a>
<a href="less_than_equal.html#fusion.sequence.operator.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>
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">less_equal</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
</pre>
<a name="fusion.sequence.operator.comparison.less_than_equal.example"></a><h6>
<a name="id612888"></a>
<a class="link" href="less_than_equal.html#fusion.sequence.operator.comparison.less_than_equal.example">Example</a>
<a name="id476312"></a>
<a href="less_than_equal.html#fusion.sequence.operator.comparison.less_than_equal.example">Example</a>
</h6>
<pre class="programlisting"><a class="link" href="../../../container/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 class="link" href="../../../container/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 class="link" href="../../../container/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>
<pre class="programlisting"><a href="../../../container/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">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="../../../container/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="../../../container/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>
<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

@ -1,13 +1,15 @@
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>not equal</title>
<title>not
equal</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.0">
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
<link rel="home" 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">
<link rel="next" href="less_than.html" title="less than">
<link rel="previous" href="equal.html" title="equal">
<link rel="next" href="less_than.html" title="less
than">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
@ -22,25 +24,29 @@
<div class="spirit-nav">
<a accesskey="p" href="equal.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../comparison.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="less_than.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="not equal">
<div class="titlepage"><div><div><h5 class="title">
<a name="fusion.sequence.operator.comparison.not_equal"></a><a class="link" href="not_equal.html" title="not equal">not
<div class="section" lang="en">
<div class="titlepage">
<div><div><h5 class="title">
<a name="fusion.sequence.operator.comparison.not_equal"></a><a href="not_equal.html" title="not
equal">not
equal</a>
</h5></div></div></div>
</h5></div></div>
<div></div>
</div>
<p>
Compare two sequences for inequality.
</p>
<a name="fusion.sequence.operator.comparison.not_equal.synopsis"></a><h6>
<a name="id609845"></a>
<a class="link" href="not_equal.html#fusion.sequence.operator.comparison.not_equal.synopsis">Synopsis</a>
<a name="id473757"></a>
<a href="not_equal.html#fusion.sequence.operator.comparison.not_equal.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">Seq1</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Seq2</span><span class="special">&gt;</span>
<span class="keyword">bool</span>
<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.sequence.operator.comparison.not_equal.parameters"></a><h6>
<a name="id609954"></a>
<a class="link" href="not_equal.html#fusion.sequence.operator.comparison.not_equal.parameters">Parameters</a>
<a name="id473909"></a>
<a href="not_equal.html#fusion.sequence.operator.comparison.not_equal.parameters">Parameters</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@ -49,59 +55,47 @@
<col>
</colgroup>
<thead><tr>
<th>
<p>
<th><p>
Parameter
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Requirement
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Description
</p>
</th>
</p></th>
</tr></thead>
<tbody><tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">a</span><span class="special">,</span>
<span class="identifier">b</span></code>
</p>
</td>
<td>
<p>
Instances of <a class="link" href="../../../sequence.html" title="Sequence">Sequence</a>
</p>
</td>
<td>
<p>
<a class="link" href="../../../sequence.html" title="Sequence">Sequence</a>(s) to compare
</p>
</td>
<td><p>
<tt class="computeroutput"><span class="identifier">a</span><span class="special">,</span>
<span class="identifier">b</span></tt>
</p></td>
<td><p>
Instances of <a href="../../../sequence.html" title="Sequence">Sequence</a>
</p></td>
<td><p>
<a href="../../../sequence.html" title="Sequence">Sequence</a>(s) to compare
</p></td>
</tr></tbody>
</table></div>
<a name="fusion.sequence.operator.comparison.not_equal.expression_semantics"></a><h6>
<a name="id610057"></a>
<a class="link" href="not_equal.html#fusion.sequence.operator.comparison.not_equal.expression_semantics">Expression
<a name="id474042"></a>
<a href="not_equal.html#fusion.sequence.operator.comparison.not_equal.expression_semantics">Expression
Semantics</a>
</h6>
<pre class="programlisting"><span class="identifier">a</span> <span class="special">!=</span> <span class="identifier">b</span>
</pre>
<p>
<span class="bold"><strong>Return type</strong></span>: <code class="computeroutput"><span class="keyword">bool</span></code>
<span class="bold"><b>Return type</b></span>: <tt class="computeroutput"><span class="keyword">bool</span></tt>
</p>
<p>
<span class="bold"><strong>Requirements</strong></span>:
<span class="bold"><b>Requirements</b></span>:
</p>
<p>
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
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
type that is convertible to bool.
</p>
<p>
@ -109,24 +103,24 @@
compile time error.
</p>
<p>
<span class="bold"><strong>Semantics</strong></span>:
<span class="bold"><b>Semantics</b></span>:
</p>
<p>
Returns !(a == b).
</p>
<a name="fusion.sequence.operator.comparison.not_equal.header"></a><h6>
<a name="id610177"></a>
<a class="link" href="not_equal.html#fusion.sequence.operator.comparison.not_equal.header">Header</a>
<a name="id474221"></a>
<a href="not_equal.html#fusion.sequence.operator.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>
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">not_equal_to</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
</pre>
<a name="fusion.sequence.operator.comparison.not_equal.example"></a><h6>
<a name="id610292"></a>
<a class="link" href="not_equal.html#fusion.sequence.operator.comparison.not_equal.example">Example</a>
<a name="id474388"></a>
<a href="not_equal.html#fusion.sequence.operator.comparison.not_equal.example">Example</a>
</h6>
<pre class="programlisting"><a class="link" href="../../../container/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 class="link" href="../../../container/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>
<pre class="programlisting"><a href="../../../container/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">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="../../../container/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">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,10 +3,10 @@
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>I/O</title>
<link rel="stylesheet" href="../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.0">
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
<link rel="home" href="../../../index.html" title="Chapter<65>1.<2E>Fusion 2.0">
<link rel="up" href="../operator.html" title="Operator">
<link rel="prev" href="../operator.html" title="Operator">
<link rel="previous" href="../operator.html" title="Operator">
<link rel="next" href="i_o/in.html" title="in">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@ -22,58 +22,61 @@
<div class="spirit-nav">
<a accesskey="p" href="../operator.html"><img src="../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../operator.html"><img src="../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="i_o/in.html"><img src="../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="I/O">
<div class="titlepage"><div><div><h4 class="title">
<a name="fusion.sequence.operator.i_o"></a><a class="link" href="i_o.html" title="I/O">I/O</a>
</h4></div></div></div>
<div class="section" lang="en">
<div class="titlepage">
<div><div><h4 class="title">
<a name="fusion.sequence.operator.i_o"></a><a href="i_o.html" title="I/O">I/O</a>
</h4></div></div>
<div></div>
</div>
<div class="toc"><dl>
<dt><span class="section"><a href="i_o/in.html">in</a></span></dt>
<dt><span class="section"><a href="i_o/out.html">out</a></span></dt>
</dl></div>
<p>
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 <a class="link" href="../../sequence.html" title="Sequence">Sequence</a>(s)
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 <a class="link" href="../../sequence.html" title="Sequence">Sequence</a>(s)
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.
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
output streams such that <a href="../../sequence.html" title="Sequence">Sequence</a>(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>
has been overloaded to extract <a href="../../sequence.html" title="Sequence">Sequence</a>(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.
</p>
<p>
The default delimiter between the elements is space, and the <a class="link" href="../../sequence.html" title="Sequence">Sequence</a>
The default delimiter between the elements is space, and the <a href="../../sequence.html" title="Sequence">Sequence</a>
is enclosed in parenthesis. For Example:
</p>
<pre class="programlisting"><a class="link" href="../../container/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>
<pre class="programlisting"><a href="../../container/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">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 class="link" href="../../container/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a>
outputs the <a href="../../container/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a>
as: (1.0 2 Howdy folks!)
</p>
<p>
The library defines three manipulators for changing the default behavior:
</p>
<div class="variablelist" title="Manipulators">
<div class="variablelist">
<p class="title"><b>Manipulators</b></p>
<dl>
<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>
<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>
<dd><p>
Defines the character that is output before the first element.
</p></dd>
<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>
<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>
<dd><p>
Defines the character that is output after the last element.
</p></dd>
<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>
<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>
<dd><p>
Defines the delimiter character between elements.
</p></dd>
</dl>
</div>
<p>
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>,
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>,
a C-string, or a wide C-string.
</p>
<p>
@ -82,12 +85,12 @@
<pre class="programlisting"><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 class="link" href="../../container/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a>, <code class="computeroutput"><span class="identifier">a</span></code>
outputs the same <a href="../../container/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a>, <tt class="computeroutput"><span class="identifier">a</span></tt>
as: [1.0, 2, Howdy folks!]
</p>
<p>
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>
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>
stream contains the following data:
</p>
<pre class="programlisting"><span class="special">(</span><span class="number">1</span> <span class="number">2</span> <span class="number">3</span><span class="special">)</span> <span class="special">[</span><span class="number">4</span><span class="special">:</span><span class="number">5</span><span class="special">]</span>
@ -95,27 +98,27 @@
<p>
The code:
</p>
<pre class="programlisting"><a class="link" href="../../container/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 class="link" href="../../container/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>
<pre class="programlisting"><a href="../../container/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&gt;</span> <span class="identifier">i</span><span class="special">;</span>
<a href="../../container/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="keyword">int</span><span class="special">&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>
<span class="identifier">std</span><span class="special">::</span><span class="identifier">cin</span> <span class="special">&gt;&gt;</span> <span class="identifier">j</span><span class="special">;</span>
</pre>
<p>
reads the data into the <a class="link" href="../../container/vector.html" title="vector"><code class="computeroutput"><span class="identifier">vector</span></code></a>(s) <code class="computeroutput"><span class="identifier">i</span></code>
and <code class="computeroutput"><span class="identifier">j</span></code>.
reads the data into the <a href="../../container/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a>(s) <tt class="computeroutput"><span class="identifier">i</span></tt>
and <tt class="computeroutput"><span class="identifier">j</span></tt>.
</p>
<p>
Note that extracting <a class="link" href="../../sequence.html" title="Sequence">Sequence</a>(s)
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 class="link" href="../../sequence.html" title="Sequence">Sequence</a>
Note that extracting <a href="../../sequence.html" title="Sequence">Sequence</a>(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
not generally work, since the streamed <a href="../../sequence.html" title="Sequence">Sequence</a>
representation may not be unambiguously parseable.
</p>
<a name="fusion.sequence.operator.i_o.header"></a><h6>
<a name="id607282"></a>
<a class="link" href="i_o.html#fusion.sequence.operator.i_o.header">Header</a>
</h6>
<a name="fusion.sequence.operator.i_o.header"></a><h5>
<a name="id470864"></a>
<a href="i_o.html#fusion.sequence.operator.i_o.header">Header</a>
</h5>
<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">hpp</span><span class="special">&gt;</span>
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">io</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
</pre>

View File

@ -3,10 +3,10 @@
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>in</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.0">
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
<link rel="home" 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">
<link rel="previous" href="../i_o.html" title="I/O">
<link rel="next" href="out.html" title="out">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@ -22,29 +22,32 @@
<div class="spirit-nav">
<a accesskey="p" href="../i_o.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../i_o.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="out.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="in">
<div class="titlepage"><div><div><h5 class="title">
<a name="fusion.sequence.operator.i_o.in"></a><a class="link" href="in.html" title="in">in</a>
</h5></div></div></div>
<div class="section" lang="en">
<div class="titlepage">
<div><div><h5 class="title">
<a name="fusion.sequence.operator.i_o.in"></a><a href="in.html" title="in">in</a>
</h5></div></div>
<div></div>
</div>
<a name="fusion.sequence.operator.i_o.in.description"></a><h6>
<a name="id607400"></a>
<a class="link" href="in.html#fusion.sequence.operator.i_o.in.description">Description</a>
<a name="id471038"></a>
<a href="in.html#fusion.sequence.operator.i_o.in.description">Description</a>
</h6>
<p>
Read a <a class="link" href="../../../sequence.html" title="Sequence">Sequence</a> from an input
Read a <a href="../../../sequence.html" title="Sequence">Sequence</a> from an input
stream.
</p>
<a name="fusion.sequence.operator.i_o.in.synopsis"></a><h6>
<a name="id607421"></a>
<a class="link" href="in.html#fusion.sequence.operator.i_o.in.synopsis">Synopsis</a>
<a name="id471075"></a>
<a href="in.html#fusion.sequence.operator.i_o.in.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">IStream</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
<span class="identifier">IStream</span><span class="special">&amp;</span>
<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.sequence.operator.i_o.in.parameters"></a><h6>
<a name="id607522"></a>
<a class="link" href="in.html#fusion.sequence.operator.i_o.in.parameters">Parameters</a>
<a name="id471219"></a>
<a href="in.html#fusion.sequence.operator.i_o.in.parameters">Parameters</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@ -53,86 +56,68 @@
<col>
</colgroup>
<thead><tr>
<th>
<p>
<th><p>
Parameter
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Requirement
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Description
</p>
</th>
</p></th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<td><p>
is
</p>
</td>
<td>
<p>
</p></td>
<td><p>
An input stream.
</p>
</td>
<td>
<p>
</p></td>
<td><p>
Stream to extract information from.
</p>
</td>
</p></td>
</tr>
<tr>
<td>
<p>
<td><p>
seq
</p>
</td>
<td>
<p>
A <a class="link" href="../../../sequence.html" title="Sequence">Sequence</a>.
</p>
</td>
<td>
<p>
</p></td>
<td><p>
A <a href="../../../sequence.html" title="Sequence">Sequence</a>.
</p></td>
<td><p>
The sequence to read.
</p>
</td>
</p></td>
</tr>
</tbody>
</table></div>
<a name="fusion.sequence.operator.i_o.in.expression_semantics"></a><h6>
<a name="id607628"></a>
<a class="link" href="in.html#fusion.sequence.operator.i_o.in.expression_semantics">Expression
<a name="id471348"></a>
<a href="in.html#fusion.sequence.operator.i_o.in.expression_semantics">Expression
Semantics</a>
</h6>
<pre class="programlisting"><span class="identifier">is</span> <span class="special">&gt;&gt;</span> <span class="identifier">seq</span>
</pre>
<p>
<span class="bold"><strong>Return type</strong></span>: IStream&amp;
<span class="bold"><b>Return type</b></span>: IStream&amp;
</p>
<p>
<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>.
<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>.
</p>
<a name="fusion.sequence.operator.i_o.in.header"></a><h6>
<a name="id607707"></a>
<a class="link" href="in.html#fusion.sequence.operator.i_o.in.header">Header</a>
<a name="id471465"></a>
<a href="in.html#fusion.sequence.operator.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>
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">in</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
</pre>
<a name="fusion.sequence.operator.i_o.in.example"></a><h6>
<a name="id608369"></a>
<a class="link" href="in.html#fusion.sequence.operator.i_o.in.example">Example</a>
<a name="id471630"></a>
<a href="in.html#fusion.sequence.operator.i_o.in.example">Example</a>
</h6>
<pre class="programlisting"><a class="link" href="../../../container/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>
<pre class="programlisting"><a href="../../../container/vector.html" title="vector"><tt class="computeroutput"><span class="identifier">vector</span></tt></a><span class="special">&lt;</span><span class="keyword">int</span><span class="special">,</span> <span class="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,10 +3,10 @@
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>out</title>
<link rel="stylesheet" href="../../../../../../../../doc/html/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.0">
<meta name="generator" content="DocBook XSL Stylesheets V1.65.1">
<link rel="home" 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">
<link rel="previous" href="in.html" title="in">
<link rel="next" href="../comparison.html" title="Comparison">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@ -22,29 +22,32 @@
<div class="spirit-nav">
<a accesskey="p" href="in.html"><img src="../../../../../../../../doc/html/images/prev.png" alt="Prev"></a><a accesskey="u" href="../i_o.html"><img src="../../../../../../../../doc/html/images/up.png" alt="Up"></a><a accesskey="h" href="../../../../index.html"><img src="../../../../../../../../doc/html/images/home.png" alt="Home"></a><a accesskey="n" href="../comparison.html"><img src="../../../../../../../../doc/html/images/next.png" alt="Next"></a>
</div>
<div class="section" title="out">
<div class="titlepage"><div><div><h5 class="title">
<a name="fusion.sequence.operator.i_o.out"></a><a class="link" href="out.html" title="out">out</a>
</h5></div></div></div>
<div class="section" lang="en">
<div class="titlepage">
<div><div><h5 class="title">
<a name="fusion.sequence.operator.i_o.out"></a><a href="out.html" title="out">out</a>
</h5></div></div>
<div></div>
</div>
<a name="fusion.sequence.operator.i_o.out.description"></a><h6>
<a name="id608474"></a>
<a class="link" href="out.html#fusion.sequence.operator.i_o.out.description">Description</a>
<a name="id471787"></a>
<a href="out.html#fusion.sequence.operator.i_o.out.description">Description</a>
</h6>
<p>
Write a <a class="link" href="../../../sequence.html" title="Sequence">Sequence</a> to an output
Write a <a href="../../../sequence.html" title="Sequence">Sequence</a> to an output
stream.
</p>
<a name="fusion.sequence.operator.i_o.out.synopsis"></a><h6>
<a name="id608496"></a>
<a class="link" href="out.html#fusion.sequence.operator.i_o.out.synopsis">Synopsis</a>
<a name="id471825"></a>
<a href="out.html#fusion.sequence.operator.i_o.out.synopsis">Synopsis</a>
</h6>
<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">typename</span> <span class="identifier">OStream</span><span class="special">,</span> <span class="keyword">typename</span> <span class="identifier">Sequence</span><span class="special">&gt;</span>
<span class="identifier">OStream</span><span class="special">&amp;</span>
<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.sequence.operator.i_o.out.parameters"></a><h6>
<a name="id608597"></a>
<a class="link" href="out.html#fusion.sequence.operator.i_o.out.parameters">Parameters</a>
<a name="id471969"></a>
<a href="out.html#fusion.sequence.operator.i_o.out.parameters">Parameters</a>
</h6>
<div class="informaltable"><table class="table">
<colgroup>
@ -53,86 +56,68 @@
<col>
</colgroup>
<thead><tr>
<th>
<p>
<th><p>
Parameter
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Requirement
</p>
</th>
<th>
<p>
</p></th>
<th><p>
Description
</p>
</th>
</p></th>
</tr></thead>
<tbody>
<tr>
<td>
<p>
<td><p>
os
</p>
</td>
<td>
<p>
</p></td>
<td><p>
An output stream.
</p>
</td>
<td>
<p>
</p></td>
<td><p>
Stream to write information to.
</p>
</td>
</p></td>
</tr>
<tr>
<td>
<p>
<td><p>
seq
</p>
</td>
<td>
<p>
A <a class="link" href="../../../sequence.html" title="Sequence">Sequence</a>.
</p>
</td>
<td>
<p>
</p></td>
<td><p>
A <a href="../../../sequence.html" title="Sequence">Sequence</a>.
</p></td>
<td><p>
The sequence to write.
</p>
</td>
</p></td>
</tr>
</tbody>
</table></div>
<a name="fusion.sequence.operator.i_o.out.expression_semantics"></a><h6>
<a name="id608702"></a>
<a class="link" href="out.html#fusion.sequence.operator.i_o.out.expression_semantics">Expression
<a name="id472097"></a>
<a href="out.html#fusion.sequence.operator.i_o.out.expression_semantics">Expression
Semantics</a>
</h6>
<pre class="programlisting"><span class="identifier">os</span> <span class="special">&lt;&lt;</span> <span class="identifier">seq</span>
</pre>
<p>
<span class="bold"><strong>Return type</strong></span>: OStream&amp;
<span class="bold"><b>Return type</b></span>: OStream&amp;
</p>
<p>
<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>.
<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>.
</p>
<a name="fusion.sequence.operator.i_o.out.header"></a><h6>
<a name="id608782"></a>
<a class="link" href="out.html#fusion.sequence.operator.i_o.out.header">Header</a>
<a name="id472215"></a>
<a href="out.html#fusion.sequence.operator.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>
<span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">fusion</span><span class="special">/</span><span class="identifier">include</span><span class="special">/</span><span class="identifier">out</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
</pre>
<a name="fusion.sequence.operator.i_o.out.example"></a><h6>
<a name="id608897"></a>
<a class="link" href="out.html#fusion.sequence.operator.i_o.out.example">Example</a>
<a name="id472381"></a>
<a href="out.html#fusion.sequence.operator.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 class="link" href="../../../container/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 class="programlisting"><span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special">&lt;&lt;</span> <a href="../../../container/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>
</pre>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>