mirror of
https://github.com/boostorg/mpl.git
synced 2026-08-04 04:34:09 +02:00
Compare commits
216 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| efc2a862a3 | |||
| 3b126bdf8c | |||
| 869438d60b | |||
| f023a68f78 | |||
| bc8b860037 | |||
| 7a15566169 | |||
| e1cb5fe91e | |||
| 9153e25b63 | |||
| 1f463f62ef | |||
| daaf813cee | |||
| 53d9af7e8f | |||
| 1f64380f62 | |||
| 4d1b6b3dc7 | |||
| b4fe64a73c | |||
| 7c9701ee5c | |||
| dd5f2d9c03 | |||
| 0e262c22a0 | |||
| 7cd0559ce8 | |||
| 10e7609c67 | |||
| 133a980224 | |||
| 95f79d95a5 | |||
| d5dcd7abb1 | |||
| 2531010a0a | |||
| 90951ea9e4 | |||
| 8a8b7b134e | |||
| 82e81345f2 | |||
| 0f5451623c | |||
| eaa3f26c9c | |||
| 07a5457dcd | |||
| f0f1680f3c | |||
| 2be4714cc5 | |||
| 952471841f | |||
| c8fe35643d | |||
| feb7835e62 | |||
| faf17ec858 | |||
| 77cda02d85 | |||
| f807edab2e | |||
| fc18efc259 | |||
| c7798600d6 | |||
| 1c02715e49 | |||
| 6fd793c787 | |||
| ff4944f0ec | |||
| 6a0f617a6c | |||
| a30e4a49a8 | |||
| c296697981 | |||
| c7997e039d | |||
| a9a1eddba8 | |||
| cddc55a6c4 | |||
| 332389f50e | |||
| 6064a97e3a | |||
| a46a787a49 | |||
| 9bbc806090 | |||
| 64f50f82aa | |||
| 6b37526352 | |||
| b2d6e667a0 | |||
| a469a67ab8 | |||
| e296279084 | |||
| 07bff9e105 | |||
| 82890fd03e | |||
| d6bc9845ba | |||
| afe0e6bbc4 | |||
| 0341108f6b | |||
| 2b6fba6f6c | |||
| bde91646cf | |||
| aec459a49c | |||
| 1169c26856 | |||
| 6893e5e5de | |||
| e6bca9d8fc | |||
| 0b6167c840 | |||
| f976861e13 | |||
| ed58434c88 | |||
| 1f482c4fa1 | |||
| d032c78c1d | |||
| e5e30a45a4 | |||
| 7f823bec1c | |||
| cafafafea3 | |||
| de26efa6ea | |||
| 04d02649d8 | |||
| db7e720ce1 | |||
| 51b8f0e100 | |||
| 77651e4aa1 | |||
| 0be4fc4b34 | |||
| 858652cd0d | |||
| 8a2e64723c | |||
| 27815b8d37 | |||
| ea6c446ad6 | |||
| bf895af8f7 | |||
| d1a05aed0a | |||
| 2d3c8f076d | |||
| 94154603ec | |||
| 74fef329d4 | |||
| 3bf644fc10 | |||
| 8886e3d7da | |||
| e174e49e32 | |||
| 11b9928353 | |||
| 4cee88eae9 | |||
| acdd0e5a92 | |||
| ec73776cbd | |||
| cccddd65c7 | |||
| 3e3b4aeef2 | |||
| 2c77a2b9c1 | |||
| c77da6a6da | |||
| eccea8a324 | |||
| 553aa2e52f | |||
| f580ae3b0a | |||
| b519e4b12b | |||
| d6d7e5abe0 | |||
| 2a61f750a9 | |||
| 9b42f0453e | |||
| 61d75128b4 | |||
| d2fcd238d6 | |||
| 27b31c31be | |||
| 8143a00562 | |||
| 18d0db5b5c | |||
| 76dab04fa9 | |||
| 50865751ae | |||
| 83d7bb938f | |||
| 310ab7a6ce | |||
| 403aea61fe | |||
| 3b026baefe | |||
| 76a5c4cf54 | |||
| cefaca1789 | |||
| de207e3775 | |||
| 8951fa2a3b | |||
| 67f5d73999 | |||
| 50f26179f6 | |||
| 0e065bc65a | |||
| d6c3a16e1e | |||
| 6e78a8f0f4 | |||
| aa8e43a017 | |||
| 7d2a04eea3 | |||
| f8e9b04e6a | |||
| de377710d4 | |||
| fc13a7ac60 | |||
| 161b05edfb | |||
| 3a4c350910 | |||
| 7cd1d88886 | |||
| 61f3e9cb9a | |||
| 08c6156599 | |||
| 2a2c4d2895 | |||
| cad61ebca3 | |||
| 6f63e9d0c6 | |||
| 41ab25a8a1 | |||
| 45d0bcadc2 | |||
| cbd633b4d0 | |||
| ff2df79e35 | |||
| fb038c188d | |||
| 315ad7d60d | |||
| ea638a4478 | |||
| e66d77051e | |||
| a5ba971297 | |||
| 360322e894 | |||
| 52d8442055 | |||
| 9e138e28ca | |||
| 75e47b8597 | |||
| b6e98cdd5a | |||
| c5621d99cd | |||
| 31a2c78a5a | |||
| cc82b7a924 | |||
| 4678423fee | |||
| 38e0d6157f | |||
| 9e7f06d29b | |||
| ae88433250 | |||
| 62d52d9d8b | |||
| b74cf94d04 | |||
| e6ba4cc17c | |||
| 294dd90076 | |||
| d38f271fae | |||
| 15a9930acb | |||
| c1de64359f | |||
| 4f0675cd13 | |||
| 16dd55a902 | |||
| b4f37ef70f | |||
| c40417c2d3 | |||
| 9028f43fc9 | |||
| 43d395d050 | |||
| e42394d3ec | |||
| 5442b57228 | |||
| 0efce8938c | |||
| 5a2abc4d58 | |||
| 837a031a0e | |||
| 991277330b | |||
| e1fa211c83 | |||
| e5dfdf47ed | |||
| e6024bc6f7 | |||
| 1ba6d35b4d | |||
| 4599fe865f | |||
| 78364897a1 | |||
| e1c57fa777 | |||
| bade8a503a | |||
| 2d5e02f382 | |||
| 4169d45c82 | |||
| 54bf81da35 | |||
| d53111cfc8 | |||
| 14b652ed90 | |||
| 58be5a2bd5 | |||
| dfc596a7bf | |||
| 9708dbc454 | |||
| cec3e22b63 | |||
| 81135e4e91 | |||
| d88ee00afe | |||
| 5cac79c3e6 | |||
| 2cf51a12f1 | |||
| 0ee68a2c76 | |||
| c7025170c7 | |||
| bf25909150 | |||
| a96b0e9924 | |||
| 98008e8e21 | |||
| 8513479231 | |||
| 2ab6ebd29b | |||
| 83f2c7a600 | |||
| 951004474c | |||
| 699740a53e | |||
| 59b2f369d1 | |||
| 74bdc378ea | |||
| afbaa1252e |
+1
-1
@@ -35,7 +35,7 @@ metafunctions. It provides a conceptual foundation and an extensive
|
||||
set of powerful and coherent tools that make doing explict metaprogramming
|
||||
in C++ as easy and enjoyable as possible within the current language.</p>
|
||||
<p>There are several places to start when getting familiar with the library,
|
||||
depending on what your know about metaprogramming in general and
|
||||
depending on what you know about metaprogramming in general and
|
||||
C++ template metaprogramming in particular. Starting with
|
||||
Boost version 1.32, the MPL comes with both an <a class="reference" href="./tutorial/tutorial-metafunctions.html">in-depth tutorial</a> on its
|
||||
fundamental concepts and an annotated <a class="reference" href="./tutorial/reference-manual.html">reference manual</a> covering all concepts
|
||||
|
||||
+22
-24
@@ -1,52 +1,50 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual</title>
|
||||
<meta name="copyright" content="Copyright © Aleksey Gurtovoy and David Abrahams, 2001-2005." />
|
||||
<meta name="copyright" content="Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams" />
|
||||
<link rel="stylesheet" href="style.css" type="text/css" />
|
||||
</head>
|
||||
<body class="docframe refmanual">
|
||||
<div class="document" id="the-mpl-reference-manual">
|
||||
<h1 class="title">The MPL Reference Manual</h1>
|
||||
<table class="docinfo" frame="void" rules="none">
|
||||
<col class="docinfo-name" />
|
||||
<col class="docinfo-content" />
|
||||
<tbody valign="top">
|
||||
<tr><th class="docinfo-name">Copyright:</th>
|
||||
<td>Copyright © Aleksey Gurtovoy and David Abrahams, 2001-2005.</td></tr>
|
||||
<tr class="field"><th class="docinfo-name">License:</th><td class="field-body">Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <tt class="literal"><span class="pre">LICENSE_1_0.txt</span></tt> or copy at
|
||||
<a class="reference" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</td>
|
||||
<td>Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</td></tr>
|
||||
<tr class="field"><th class="docinfo-name">License:</th><td class="field-body">Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <tt class="literal"><span class="pre">LICENSE_1_0.txt</span></tt> or copy at
|
||||
<a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<div class="document" id="the-mpl-reference-manual">
|
||||
<!-- no .. section-numbering:: -->
|
||||
<!-- TOC copyright: -->
|
||||
<ul class="toc simple" id="outline">
|
||||
<li><a class="reference" href="./refmanual/sequences.html" id="id322" name="id322">Sequences</a></li>
|
||||
<li><a class="reference" href="./refmanual/iterators.html" id="id376" name="id376">Iterators</a></li>
|
||||
<li><a class="reference" href="./refmanual/algorithms.html" id="id388" name="id388">Algorithms</a></li>
|
||||
<li><a class="reference" href="./refmanual/metafunctions.html" id="id436" name="id436">Metafunctions</a></li>
|
||||
<li><a class="reference" href="./refmanual/data-types.html" id="id496" name="id496">Data Types</a></li>
|
||||
<li><a class="reference" href="./refmanual/macros.html" id="id509" name="id509">Macros</a></li>
|
||||
<li><a class="reference" href="./refmanual/terminology.html" id="id529" name="id529">Terminology</a></li>
|
||||
<li><a class="reference" href="./refmanual/categorized-index.html" id="id530" name="id530">Categorized Index</a></li>
|
||||
<li><a class="reference" href="./refmanual/acknowledgements.html" id="id533" name="id533">Acknowledgements</a></li>
|
||||
<li><a class="reference" href="./refmanual/refmanual_toc.html">Full TOC</a></li>
|
||||
<li><a class="reference internal" href="./refmanual/sequences.html" id="id1393">Sequences</a></li>
|
||||
<li><a class="reference internal" href="./refmanual/iterators.html" id="id1448">Iterators</a></li>
|
||||
<li><a class="reference internal" href="./refmanual/algorithms.html" id="id1460">Algorithms</a></li>
|
||||
<li><a class="reference internal" href="./refmanual/metafunctions.html" id="id1510">Metafunctions</a></li>
|
||||
<li><a class="reference internal" href="./refmanual/data-types.html" id="id1572">Data Types</a></li>
|
||||
<li><a class="reference internal" href="./refmanual/macros.html" id="id1586">Macros</a></li>
|
||||
<li><a class="reference internal" href="./refmanual/terminology.html" id="id1610">Terminology</a></li>
|
||||
<li><a class="reference internal" href="./refmanual/categorized-index.html" id="id1611">Categorized Index</a></li>
|
||||
<li><a class="reference internal" href="./refmanual/acknowledgements.html" id="id1614">Acknowledgements</a></li>
|
||||
<li><a class="reference internal" href="./refmanual/refmanual_toc.html">Full TOC</a></li>
|
||||
</ul>
|
||||
<!-- workaround weird substitution bug (used to work!): -->
|
||||
<!-- workaround weird substitution bug (works with t's!): -->
|
||||
<!-- "[*Note:*" instead of "|Note:|" to workaround another subst. bug -->
|
||||
</div>
|
||||
<hr class="footer" />
|
||||
<div class="footer">
|
||||
Generated on: 2004-11-15 12:15 UTC.
|
||||
Generated by <a class="reference" href="http://docutils.sourceforge.net/" target="_top">Docutils</a> from <a class="reference" href="http://docutils.sourceforge.net/rst.html" target="_top">reStructuredText</a> source.
|
||||
<hr class="footer" />
|
||||
Generated on: 2010-08-09 18:21 UTC.
|
||||
Generated by <a class="reference external" href="http://docutils.sourceforge.net/" target="_top">Docutils</a> from <a class="reference external" href="http://docutils.sourceforge.net/rst.html" target="_top">reStructuredText</a> source.
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: accumulate</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,8 +12,8 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./algorithms.html" class="navigation-link">Algorithms</a> / <a href="./iteration-algorithms.html" class="navigation-link">Iteration Algorithms</a> / <a href="./accumulate.html" class="navigation-link">accumulate</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="accumulate">
|
||||
<h1><a class="toc-backref" href="./iteration-algorithms.html#id401" name="accumulate">accumulate</a></h1>
|
||||
<div class="section" id="accumulate-synopsis">
|
||||
<h1><a class="toc-backref" href="./iteration-algorithms.html#id1473">accumulate</a></h1>
|
||||
<div class="section" id="id527">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
@@ -30,36 +27,36 @@ struct <a href="./accumulate.html" class="identifier">accumulate</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="accumulate-description">
|
||||
<div class="section" id="id528">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Returns the result of the successive application of binary <tt class="literal"><span class="pre">ForwardOp</span></tt> to the
|
||||
result of the previous <tt class="literal"><span class="pre">ForwardOp</span></tt> invocation (<tt class="literal"><span class="pre">State</span></tt> if it's the first call)
|
||||
and every element of the sequence in the range [<tt class="literal"><span class="pre"><a href="./begin.html" class="identifier">begin</a><Sequence>::type</span></tt>, <tt class="literal"><span class="pre"><a href="./end.html" class="identifier">end</a><Sequence>::type</span></tt>) in order.
|
||||
[<em>Note:</em> <tt class="literal"><span class="pre"><a href="./accumulate.html" class="identifier">accumulate</a></span></tt> is a synonym for <a class="refentry reference" href="./fold.html"><tt class="refentry literal"><span class="pre">fold</span></tt></a> — <em>end note</em>]</p>
|
||||
<p>Returns the result of the successive application of binary <tt class="literal"><span class="pre">ForwardOp</span></tt> to the
|
||||
result of the previous <tt class="literal"><span class="pre">ForwardOp</span></tt> invocation (<tt class="literal"><span class="pre">State</span></tt> if it's the first call)
|
||||
and every element of the sequence in the range [<tt class="literal"><span class="pre"><a href="./begin.html" class="identifier">begin</a><Sequence>::type</span></tt>, <tt class="literal"><span class="pre"><a href="./end.html" class="identifier">end</a><Sequence>::type</span></tt>) in order.
|
||||
[<em>Note:</em> <tt class="literal"><span class="pre"><a href="./accumulate.html" class="identifier">accumulate</a></span></tt> is a synonym for <a class="reference internal" href="./fold.html">fold</a> — <em>end note</em>]</p>
|
||||
</div>
|
||||
<div class="section" id="accumulate-header">
|
||||
<div class="section" id="id529">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/accumulate.hpp" class="header">boost/mpl/accumulate.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="accumulate-parameters">
|
||||
<div class="section" id="id530">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="15%" />
|
||||
<col width="32%" />
|
||||
<col width="53%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">Sequence</span></tt></td>
|
||||
<td><a class="reference" href="./forward-sequence.html">Forward Sequence</a></td>
|
||||
<td><a class="reference internal" href="./forward-sequence.html">Forward Sequence</a></td>
|
||||
<td>A sequence to iterate.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre">State</span></tt></td>
|
||||
@@ -68,59 +65,61 @@ and every element of the sequence in the range [<tt class="literal"><span class=
|
||||
application.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre">ForwardOp</span></tt></td>
|
||||
<td>Binary <a class="reference" href="./lambda-expression.html">Lambda Expression</a></td>
|
||||
<td>Binary <a class="reference internal" href="./lambda-expression.html">Lambda Expression</a></td>
|
||||
<td>The operation to be executed on forward
|
||||
traversal.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="accumulate-expression-semantics">
|
||||
<div class="section" id="id531">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For any <a class="reference" href="./forward-sequence.html">Forward Sequence</a> <tt class="literal"><span class="pre">s</span></tt>, binary <a class="reference" href="./lambda-expression.html">Lambda Expression</a> <tt class="literal"><span class="pre">op</span></tt>, and arbitrary type <tt class="literal"><span class="pre">state</span></tt>:</p>
|
||||
<p>For any <a class="reference internal" href="./forward-sequence.html">Forward Sequence</a> <tt class="literal"><span class="pre">s</span></tt>, binary <a class="reference internal" href="./lambda-expression.html">Lambda Expression</a> <tt class="literal"><span class="pre">op</span></tt>, and arbitrary type <tt class="literal"><span class="pre">state</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./accumulate.html" class="identifier">accumulate</a><s,state,op>::type t;
|
||||
typedef <a href="./accumulate.html" class="identifier">accumulate</a><s,state,op>::type t;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body">A type.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first">A type.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Equivalent to</p>
|
||||
<pre class="last literal-block">
|
||||
typedef <a href="./fold.html" class="identifier">fold</a><s,state,op>::type t;
|
||||
typedef <a href="./fold.html" class="identifier">fold</a><s,state,op>::type t;
|
||||
</pre>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="accumulate-complexity">
|
||||
<div class="section" id="id532">
|
||||
<h3><a class="subsection-title" href="#complexity" name="complexity">Complexity</a></h3>
|
||||
<p>Linear. Exactly <tt class="literal"><span class="pre"><a href="./size.html" class="identifier">size</a><s>::value</span></tt> applications of <tt class="literal"><span class="pre">op</span></tt>.</p>
|
||||
</div>
|
||||
<div class="section" id="accumulate-example">
|
||||
<div class="section" id="id533">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./vector.html" class="identifier">vector</a><long,float,short,double,float,long,long double> types;
|
||||
typedef <a href="./accumulate.html" class="identifier">accumulate</a><
|
||||
types
|
||||
, <a href="./int.html" class="identifier">int_</a><0>
|
||||
, <a href="./if.html" class="identifier">if_</a>< is_float<_2>,<a href="./next.html" class="identifier">next</a><_1>,_1 >
|
||||
, <a href="./if.html" class="identifier">if_</a>< is_float<<a href="./placeholders.html" class="identifier">_2</a>>,<a href="./next.html" class="identifier">next</a><<a href="./placeholders.html" class="identifier">_1</a>>,<a href="./placeholders.html" class="identifier">_1</a> >
|
||||
>::type number_of_floats;
|
||||
|
||||
<a href="./assert-relation.html" class="identifier">BOOST_MPL_ASSERT_RELATION</a>( number_of_floats::value, ==, 4 );
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="accumulate-see-also">
|
||||
<div class="section" id="id534">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./algorithms.html">Algorithms</a>, <a class="refentry reference" href="./fold.html"><tt class="refentry literal"><span class="pre">fold</span></tt></a>, <a class="refentry reference" href="./reverse-fold.html"><tt class="refentry literal"><span class="pre">reverse_fold</span></tt></a>, <a class="refentry reference" href="./iter-fold.html"><tt class="refentry literal"><span class="pre">iter_fold</span></tt></a>, <a class="refentry reference" href="./reverse-iter-fold.html"><tt class="refentry literal"><span class="pre">reverse_iter_fold</span></tt></a>, <a class="refentry reference" href="./copy.html"><tt class="refentry literal"><span class="pre">copy</span></tt></a>, <a class="refentry reference" href="./copy-if.html"><tt class="refentry literal"><span class="pre">copy_if</span></tt></a></p>
|
||||
<!-- modtime: November 10, 2004 04:25:46 +0000 -->
|
||||
<p><a class="reference internal" href="./algorithms.html">Algorithms</a>, <a class="reference internal" href="./fold.html">fold</a>, <a class="reference internal" href="./reverse-fold.html">reverse_fold</a>, <a class="reference internal" href="./iter-fold.html">iter_fold</a>, <a class="reference internal" href="./reverse-iter-fold.html">reverse_iter_fold</a>, <a class="reference internal" href="./copy.html">copy</a>, <a class="reference internal" href="./copy-if.html">copy_if</a></p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./reverse-iter-fold.html" class="navigation-link">Prev</a> <a href="./querying-algorithms.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./reverse-iter-fold.html" class="navigation-link">Back</a> Along</span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./iteration-algorithms.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: Acknowledgements</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,13 +12,14 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./acknowledgements.html" class="navigation-link">Acknowledgements</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="acknowledgements">
|
||||
<h1><a class="toc-backref" href="../refmanual.html#id533" name="acknowledgements">Acknowledgements</a></h1>
|
||||
<a class="target" id="label-acknowledgements" name="label-acknowledgements"></a><p>The format and language of this reference documentation has been greatly influenced by
|
||||
the SGI's <a class="reference" href="http://www.sgi.com/tech/stl/" target="_top">Standard Template Library Programmer's Guide</a>.</p>
|
||||
<!-- modtime: November 09, 2004 17:18:37 +0000 -->
|
||||
<h1><a class="toc-backref" href="../refmanual.html#id1614">Acknowledgements</a></h1>
|
||||
<p id="label-acknowledgements">The format and language of this reference documentation has been greatly influenced by
|
||||
the SGI's <a class="reference external" href="http://www.sgi.com/tech/stl/" target="_top">Standard Template Library Programmer's Guide</a>.</p>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./components.html" class="navigation-link">Prev</a> Next</span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./categorized-index.html" class="navigation-link">Back</a> Along</span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="../refmanual.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+42
-41
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: advance</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,8 +12,8 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./iterators.html" class="navigation-link">Iterators</a> / <a href="./iterator-metafunctions.html" class="navigation-link">Iterator Metafunctions</a> / <a href="./advance.html" class="navigation-link">advance</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="advance">
|
||||
<h1><a class="toc-backref" href="./iterator-metafunctions.html#id382" name="advance">advance</a></h1>
|
||||
<div class="section" id="advance-synopsis">
|
||||
<h1><a class="toc-backref" href="./iterator-metafunctions.html#id1454">advance</a></h1>
|
||||
<div class="section" id="id403">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
@@ -29,91 +26,94 @@ struct <a href="./advance.html" class="identifier">advance</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="advance-description">
|
||||
<div class="section" id="id404">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Moves <tt class="literal"><span class="pre">Iterator</span></tt> by the distance <tt class="literal"><span class="pre">N</span></tt>. For <a class="reference" href="./bidirectional-iterator.html">bidirectional</a> and
|
||||
<a class="reference" href="./random-access-iterator.html">random access</a> iterators, the distance may be negative.</p>
|
||||
<p>Moves <tt class="literal"><span class="pre">Iterator</span></tt> by the distance <tt class="literal"><span class="pre">N</span></tt>. For <a class="reference internal" href="./bidirectional-iterator.html">bidirectional</a> and
|
||||
<a class="reference internal" href="./random-access-iterator.html">random access</a> iterators, the distance may be negative.</p>
|
||||
</div>
|
||||
<div class="section" id="advance-header">
|
||||
<div class="section" id="id405">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/advance.hpp" class="header">boost/mpl/advance.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="advance-parameters">
|
||||
<div class="section" id="id406">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="19%" />
|
||||
<col width="35%" />
|
||||
<col width="45%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">Iterator</span></tt></td>
|
||||
<td><a class="reference" href="./forward-iterator.html">Forward Iterator</a></td>
|
||||
<td><a class="reference internal" href="./forward-iterator.html">Forward Iterator</a></td>
|
||||
<td>An iterator to advance.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre">N</span></tt></td>
|
||||
<td><a class="reference" href="./integral-constant.html">Integral Constant</a></td>
|
||||
<td><a class="reference internal" href="./integral-constant.html">Integral Constant</a></td>
|
||||
<td>A distance.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="advance-model-of">
|
||||
<div class="section" id="id407">
|
||||
<h3><a class="subsection-title" href="#model-of" name="model-of">Model Of</a></h3>
|
||||
<p><a class="reference" href="./tag-dispatched.html">Tag Dispatched Metafunction</a></p>
|
||||
<p><a class="reference internal" href="./tag-dispatched-metafunction.html">Tag Dispatched Metafunction</a></p>
|
||||
</div>
|
||||
<div class="section" id="advance-expression-semantics">
|
||||
<div class="section" id="id408">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For a <a class="reference" href="./forward-iterator.html">Forward Iterator</a> <tt class="literal"><span class="pre">iter</span></tt> and arbitrary <a class="reference" href="./integral-constant.html">Integral Constant</a> <tt class="literal"><span class="pre">n</span></tt>:</p>
|
||||
<p>For a <a class="reference internal" href="./forward-iterator.html">Forward Iterator</a> <tt class="literal"><span class="pre">iter</span></tt> and arbitrary <a class="reference internal" href="./integral-constant.html">Integral Constant</a> <tt class="literal"><span class="pre">n</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./advance.html" class="identifier">advance</a><iter,n>::type j;
|
||||
typedef <a href="./advance.html" class="identifier">advance</a><iter,n>::type j;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference" href="./forward-iterator.html">Forward Iterator</a>.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><a class="reference internal" href="./forward-iterator.html">Forward Iterator</a>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body">If <tt class="literal"><span class="pre">Iterator</span></tt> is a <a class="reference" href="./forward-iterator.html">Forward Iterator</a>, <tt class="literal"><span class="pre">n::value</span></tt> must be nonnegative.</td>
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body"><p class="first">If <tt class="literal"><span class="pre">Iterator</span></tt> is a <a class="reference internal" href="./forward-iterator.html">Forward Iterator</a>, <tt class="literal"><span class="pre">n::value</span></tt> must be nonnegative.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Equivalent to:</p>
|
||||
<pre class="literal-block">
|
||||
typedef iter i0;
|
||||
typedef <a href="./next.html" class="identifier">next</a><i0>::type i1;
|
||||
typedef iter i0;
|
||||
typedef <a href="./next.html" class="identifier">next</a><i0>::type i1;
|
||||
<em>...</em>
|
||||
typedef <a href="./next.html" class="identifier">next</a><i<em>n-1</em>>::type j;
|
||||
</pre>
|
||||
<p>if <tt class="literal"><span class="pre">n::value</span> <span class="pre">></span> <span class="pre">0</span></tt>, and</p>
|
||||
<pre class="literal-block">
|
||||
typedef iter i0;
|
||||
typedef <a href="./prior.html" class="identifier">prior</a><i0>::type i1;
|
||||
typedef iter i0;
|
||||
typedef <a href="./prior.html" class="identifier">prior</a><i0>::type i1;
|
||||
<em>...</em>
|
||||
typedef <a href="./prior.html" class="identifier">prior</a><i<em>n-1</em>>::type j;
|
||||
</pre>
|
||||
<p class="last">otherwise.</p>
|
||||
<p>otherwise.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Postcondition:</th><td class="field-body"><tt class="literal"><span class="pre">j</span></tt> is dereferenceable or past-the-end;
|
||||
<tt class="literal"><span class="pre"><a href="./distance.html" class="identifier">distance</a><iter,j>::value</span> <span class="pre">==</span> <span class="pre">n::value</span></tt> if <tt class="literal"><span class="pre">n::value</span> <span class="pre">></span> <span class="pre">0</span></tt>, and
|
||||
<tt class="literal"><span class="pre"><a href="./distance.html" class="identifier">distance</a><j,iter>::value</span> <span class="pre">==</span> <span class="pre">n::value</span></tt> otherwise.</td>
|
||||
<tr class="field"><th class="field-name">Postcondition:</th><td class="field-body"><p class="first last"><tt class="literal"><span class="pre">j</span></tt> is dereferenceable or past-the-end;
|
||||
<tt class="literal"><span class="pre"><a href="./distance.html" class="identifier">distance</a><iter,j>::value</span> <span class="pre">==</span> <span class="pre">n::value</span></tt> if <tt class="literal"><span class="pre">n::value</span> <span class="pre">></span> <span class="pre">0</span></tt>, and
|
||||
<tt class="literal"><span class="pre"><a href="./distance.html" class="identifier">distance</a><j,iter>::value</span> <span class="pre">==</span> <span class="pre">n::value</span></tt> otherwise.</p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="advance-complexity">
|
||||
<div class="section" id="id409">
|
||||
<h3><a class="subsection-title" href="#complexity" name="complexity">Complexity</a></h3>
|
||||
<p>Amortized constant time if <tt class="literal"><span class="pre">iter</span></tt> is a model of
|
||||
<a class="reference" href="./random-access-iterator.html">Random Access Iterator</a>, otherwise linear time.</p>
|
||||
<p>Amortized constant time if <tt class="literal"><span class="pre">iter</span></tt> is a model of
|
||||
<a class="reference internal" href="./random-access-iterator.html">Random Access Iterator</a>, otherwise linear time.</p>
|
||||
</div>
|
||||
<div class="section" id="advance-example">
|
||||
<div class="section" id="id410">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./range-c.html" class="identifier">range_c</a><int,0,10> numbers;
|
||||
@@ -127,15 +127,16 @@ typedef <a href="./advance.html" class="identifier">advance</a><last,<a href=
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( boost::is_same<i2,first> ));
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="advance-see-also">
|
||||
<div class="section" id="id411">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./iterators.html">Iterators</a>, <a class="reference" href="./tag-dispatched.html">Tag Dispatched Metafunction</a>, <a class="refentry reference" href="./distance.html"><tt class="refentry literal"><span class="pre">distance</span></tt></a>, <a class="refentry reference" href="./next.html"><tt class="refentry literal"><span class="pre">next</span></tt></a></p>
|
||||
<!-- modtime: November 11, 2004 11:16:39 +0000 -->
|
||||
<p><a class="reference internal" href="./iterators.html">Iterators</a>, <a class="reference internal" href="./tag-dispatched-metafunction.html">Tag Dispatched Metafunction</a>, <a class="reference internal" href="./distance.html">distance</a>, <a class="reference internal" href="./next.html">next</a></p>
|
||||
<!-- Iterators/Iterator Metafunctions//distance |20 -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./iterator-metafunctions.html" class="navigation-link">Prev</a> <a href="./distance.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group">Back <a href="./distance.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./iterator-metafunctions.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: Concepts</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -14,16 +11,18 @@
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./algorithms.html" class="navigation-link">Prev</a> <a href="./inserter.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group">Back <a href="./inserters.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./algorithms.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./algorithms.html" class="navigation-link">Algorithms</a> / <a href="./algorithms-concepts.html" class="navigation-link">Concepts</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="algorithms-concepts">
|
||||
<h1><a class="toc-backref" href="./algorithms.html#id389" name="algorithms-concepts">Concepts</a></h1>
|
||||
<a class="target" id="label-algorithms-concepts" name="label-algorithms-concepts"></a><!-- Algorithms/Concepts//Inserter -->
|
||||
<div class="section" id="id453">
|
||||
<h1><a class="toc-backref" href="./algorithms.html#id1461"><a class="subsection-title" href="#concepts" name="concepts">Concepts</a></a></h1>
|
||||
<!-- Algorithms/Concepts//Inserter -->
|
||||
<ul class="toc simple" id="outline">
|
||||
<li><a class="reference" href="./inserter.html" id="id390" name="id390">Inserter</a></li>
|
||||
<li><a class="reference" href="./reversible-algorithm.html" id="id391" name="id391">Reversible Algorithm</a></li>
|
||||
<li><a class="reference internal" href="./inserter.html" id="id1462">Inserter</a></li>
|
||||
<li><a class="reference internal" href="./reversible-algorithm.html" id="id1463">Reversible Algorithm</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./algorithms.html" class="navigation-link">Prev</a> <a href="./inserter.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group">Back <a href="./inserters.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./algorithms.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: Algorithms</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,49 +12,50 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./algorithms.html" class="navigation-link">Algorithms</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="algorithms">
|
||||
<h1><a class="toc-backref" href="../refmanual.html#id388" name="algorithms">Algorithms</a></h1>
|
||||
<a class="target" id="label-algorithms" name="label-algorithms"></a><p>The MPL provides a broad range of fundamental algorithms aimed to
|
||||
satisfy the majority of sequential compile-time data processing
|
||||
<h1><a class="toc-backref" href="../refmanual.html#id1460">Algorithms</a></h1>
|
||||
<p id="label-algorithms">The MPL provides a broad range of fundamental algorithms aimed to
|
||||
satisfy the majority of sequential compile-time data processing
|
||||
needs. The algorithms include compile-time counterparts
|
||||
of many of the STL algorithms, iteration algorithms borrowed from
|
||||
of many of the STL algorithms, iteration algorithms borrowed from
|
||||
functional programming languages, and more.</p>
|
||||
<p>Unlike the algorithms in the C++ Standard Library, which operate on
|
||||
implict <em>iterator ranges</em>, the majority of MPL counterparts take
|
||||
and return <em>sequences</em>. This derivation is not dictated by the
|
||||
and return <em>sequences</em>. This derivation is not dictated by the
|
||||
functional nature of C++ compile-time computations per se, but
|
||||
rather by a desire to improve general usability of the library,
|
||||
making programming with compile-time data structures as enjoyable
|
||||
making programming with compile-time data structures as enjoyable
|
||||
as possible.</p>
|
||||
<!-- This can be seen as a further generalization and extension of
|
||||
<!-- This can be seen as a further generalization and extension of
|
||||
the STL's conceptual framework. -->
|
||||
<p>In the spirit of the STL, MPL algorithms are <em>generic</em>, meaning
|
||||
that they are not tied to particular sequence class
|
||||
implementations, and can operate on a wide range of arguments as
|
||||
<p>In the spirit of the STL, MPL algorithms are <em>generic</em>, meaning
|
||||
that they are not tied to particular sequence class
|
||||
implementations, and can operate on a wide range of arguments as
|
||||
long as they satisfy the documented requirements. The requirements
|
||||
are formulated in terms of concepts. Under the hood,
|
||||
algorithms are decoupled from concrete sequence
|
||||
implementations by operating on <a class="reference" href="./iterators.html">Iterators</a>.</p>
|
||||
<p>All MPL algorithms can be sorted into three
|
||||
major categories: iteration algorithms, querying algorithms, and
|
||||
transformation algorithms. The transformation algorithms introduce
|
||||
an associated <a class="reference" href="./inserter.html">Inserter</a> concept, a rough equivalent for the notion of
|
||||
<a class="reference" href="http://www.sgi.com/tech/stl/OutputIterator.html" target="_top">Output Iterator</a> in the Standard Library. Moreover, every
|
||||
transformation algorithm provides a <tt class="literal"><span class="pre">reverse_</span></tt> counterpart,
|
||||
are formulated in terms of concepts. Under the hood,
|
||||
algorithms are decoupled from concrete sequence
|
||||
implementations by operating on <a class="reference internal" href="./iterators.html">Iterators</a>.</p>
|
||||
<p>All MPL algorithms can be sorted into three
|
||||
major categories: iteration algorithms, querying algorithms, and
|
||||
transformation algorithms. The transformation algorithms introduce
|
||||
an associated <a class="reference internal" href="./inserter.html">Inserter</a> concept, a rough equivalent for the notion of
|
||||
<a class="reference external" href="http://www.sgi.com/tech/stl/OutputIterator.html" target="_top">Output Iterator</a> in the Standard Library. Moreover, every
|
||||
transformation algorithm provides a <tt class="literal"><span class="pre">reverse_</span></tt> counterpart,
|
||||
allowing for a wider range of efficient transformations — a
|
||||
common functionality documented by the <a class="reference" href="./reversible-algorithm.html">Reversible Algorithm</a>
|
||||
common functionality documented by the <a class="reference internal" href="./reversible-algorithm.html">Reversible Algorithm</a>
|
||||
concept.</p>
|
||||
<!-- modtime: November 29, 2004 06:33:05 +0000 -->
|
||||
<ul class="toc simple" id="outline">
|
||||
<li><a class="reference" href="./algorithms-concepts.html" id="id389" name="id389">Concepts</a></li>
|
||||
<li><a class="reference" href="./inserters.html" id="id392" name="id392">Inserters</a></li>
|
||||
<li><a class="reference" href="./iteration-algorithms.html" id="id396" name="id396">Iteration Algorithms</a></li>
|
||||
<li><a class="reference" href="./querying-algorithms.html" id="id402" name="id402">Querying Algorithms</a></li>
|
||||
<li><a class="reference" href="./transformation-algorithms.html" id="id413" name="id413">Transformation Algorithms</a></li>
|
||||
<li><a class="reference" href="./runtime-algorithms.html" id="id436" name="id436">Runtime Algorithms</a></li>
|
||||
<li><a class="reference internal" href="./algorithms-concepts.html" id="id1461">Concepts</a></li>
|
||||
<li><a class="reference internal" href="./inserters.html" id="id1464">Inserters</a></li>
|
||||
<li><a class="reference internal" href="./iteration-algorithms.html" id="id1468">Iteration Algorithms</a></li>
|
||||
<li><a class="reference internal" href="./querying-algorithms.html" id="id1474">Querying Algorithms</a></li>
|
||||
<li><a class="reference internal" href="./transformation-algorithms.html" id="id1485">Transformation Algorithms</a></li>
|
||||
<li><a class="reference internal" href="./runtime-algorithms.html" id="id1508">Runtime Algorithms</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./iterator-category.html" class="navigation-link">Prev</a> <a href="./algorithms-concepts.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./iterators.html" class="navigation-link">Back</a> <a href="./metafunctions.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="../refmanual.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+29
-30
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: always</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,11 +12,11 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./metafunctions.html" class="navigation-link">Metafunctions</a> / <a href="./miscellaneous.html" class="navigation-link">Miscellaneous</a> / <a href="./always.html" class="navigation-link">always</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="always">
|
||||
<h1><a class="toc-backref" href="./miscellaneous.html#id489" name="always">always</a></h1>
|
||||
<div class="section" id="always-synopsis">
|
||||
<h1><a class="toc-backref" href="./miscellaneous.html#id1565">always</a></h1>
|
||||
<div class="section" id="id1155">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
template<
|
||||
typename X
|
||||
>
|
||||
struct <a href="./always.html" class="identifier">always</a>
|
||||
@@ -29,33 +26,33 @@ struct <a href="./always.html" class="identifier">always</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="always-description">
|
||||
<div class="section" id="id1156">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p><tt class="literal"><span class="pre"><a href="./always.html" class="identifier">always</a><X></span></tt> specialization is a variadic <a class="reference" href="./metafunction-class.html">Metafunction Class</a> always returning the
|
||||
<p><tt class="literal"><span class="pre"><a href="./always.html" class="identifier">always</a><X></span></tt> specialization is a variadic <a class="reference internal" href="./metafunction-class.html">Metafunction Class</a> always returning the
|
||||
same type, <tt class="literal"><span class="pre">X</span></tt>, regardless of the number and types of passed arguments.</p>
|
||||
</div>
|
||||
<div class="section" id="always-header">
|
||||
<div class="section" id="id1157">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/always.hpp" class="header">boost/mpl/always.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="always-model-of">
|
||||
<div class="section" id="id1158">
|
||||
<h3><a class="subsection-title" href="#model-of" name="model-of">Model of</a></h3>
|
||||
<p><a class="reference" href="./metafunction-class.html">Metafunction Class</a></p>
|
||||
<p><a class="reference internal" href="./metafunction-class.html">Metafunction Class</a></p>
|
||||
</div>
|
||||
<div class="section" id="always-parameters">
|
||||
<div class="section" id="id1159">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="22%" />
|
||||
<col width="28%" />
|
||||
<col width="51%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
@@ -66,46 +63,48 @@ same type, <tt class="literal"><span class="pre">X</span></tt>, regardless of th
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="always-expression-semantics">
|
||||
<div class="section" id="id1160">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For an arbitrary type <tt class="literal"><span class="pre">x</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./always.html" class="identifier">always</a><x> f;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference" href="./metafunction-class.html">Metafunction Class</a>.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><a class="reference internal" href="./metafunction-class.html">Metafunction Class</a>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Equivalent to</p>
|
||||
<pre class="last literal-block">
|
||||
struct f : <a href="./bind.html" class="identifier">bind</a>< <a href="./identity.html" class="identifier">identity</a><_1>, x > {};
|
||||
struct f : <a href="./bind.html" class="identifier">bind</a>< <a href="./identity.html" class="identifier">identity</a><<a href="./placeholders.html" class="identifier">_1</a>>, x > {};
|
||||
</pre>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="always-example">
|
||||
<div class="section" id="id1161">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./always.html" class="identifier">always</a><true_> always_true;
|
||||
typedef <a href="./always.html" class="identifier">always</a><<a href="./bool.html" class="identifier">true_</a>> always_true;
|
||||
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( <a href="./apply.html" class="identifier">apply</a>< always_true,false_> ));
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( <a href="./apply.html" class="identifier">apply</a>< always_true,false_,false_ > ));
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( <a href="./apply.html" class="identifier">apply</a>< always_true,false_,false_,false_ > ));
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( <a href="./apply.html" class="identifier">apply</a>< always_true,<a href="./bool.html" class="identifier">false_</a>> ));
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( <a href="./apply.html" class="identifier">apply</a>< always_true,<a href="./bool.html" class="identifier">false_</a>,<a href="./bool.html" class="identifier">false_</a> > ));
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( <a href="./apply.html" class="identifier">apply</a>< always_true,<a href="./bool.html" class="identifier">false_</a>,<a href="./bool.html" class="identifier">false_</a>,<a href="./bool.html" class="identifier">false_</a> > ));
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="always-see-also">
|
||||
<div class="section" id="id1162">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./metafunctions.html">Metafunctions</a>, <a class="reference" href="./metafunction-class.html">Metafunction Class</a>, <a class="refentry reference" href="./identity.html"><tt class="refentry literal"><span class="pre">identity</span></tt></a>, <a class="refentry reference" href="./bind.html"><tt class="refentry literal"><span class="pre">bind</span></tt></a>, <a class="refentry reference" href="./apply.html"><tt class="refentry literal"><span class="pre">apply</span></tt></a></p>
|
||||
<!-- modtime: November 13, 2004 02:52:37 +0000 -->
|
||||
<p><a class="reference internal" href="./metafunctions.html">Metafunctions</a>, <a class="reference internal" href="./metafunction-class.html">Metafunction Class</a>, <a class="reference internal" href="./identity.html">identity</a>, <a class="reference internal" href="./bind.html">bind</a>, <a class="reference internal" href="./apply.html">apply</a></p>
|
||||
<!-- Metafunctions/Miscellaneous//inherit |30 -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./identity.html" class="navigation-link">Prev</a> <a href="./inherit.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./identity.html" class="navigation-link">Back</a> <a href="./inherit.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./miscellaneous.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+34
-35
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: and_</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,11 +12,11 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./metafunctions.html" class="navigation-link">Metafunctions</a> / <a href="./logical-operations.html" class="navigation-link">Logical Operations</a> / <a href="./and.html" class="navigation-link">and_</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="and">
|
||||
<h1><a class="toc-backref" href="./logical-operations.html#id476" name="and">and_</a></h1>
|
||||
<div class="section" id="and-synopsis">
|
||||
<h1><a class="toc-backref" href="./logical-operations.html#id1550">and_</a></h1>
|
||||
<div class="section" id="id1068">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
template<
|
||||
typename F1
|
||||
, typename F2
|
||||
<em>...</em>
|
||||
@@ -31,54 +28,54 @@ struct <a href="./and.html" class="identifier">and_</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="and-description">
|
||||
<div class="section" id="id1069">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Returns the result of short-circuit <em>logical and</em> (<tt class="literal"><span class="pre">&&</span></tt>) operation on its arguments.</p>
|
||||
</div>
|
||||
<div class="section" id="and-header">
|
||||
<div class="section" id="id1070">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/and.hpp" class="header">boost/mpl/and.hpp</a>>
|
||||
#include <<a href="../../../../boost/mpl/logical.hpp" class="header">boost/mpl/logical.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="and-parameters">
|
||||
<div class="section" id="id1071">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="17%" />
|
||||
<col width="30%" />
|
||||
<col width="53%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">F1</span></tt>, <tt class="literal"><span class="pre">F2</span></tt>,... <tt class="literal"><span class="pre">Fn</span></tt></td>
|
||||
<td>Nullary <a class="reference" href="./metafunction.html">Metafunction</a></td>
|
||||
<td>Nullary <a class="reference internal" href="./metafunction.html">Metafunction</a></td>
|
||||
<td>Operation's arguments.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="and-expression-semantics">
|
||||
<div class="section" id="id1072">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For arbitrary nullary <a class="reference" href="./metafunction.html">Metafunction</a>s <tt class="literal"><span class="pre">f1</span></tt>, <tt class="literal"><span class="pre">f2</span></tt>,... <tt class="literal"><span class="pre">fn</span></tt>:</p>
|
||||
<p>For arbitrary nullary <a class="reference internal" href="./metafunction.html">Metafunction</a>s <tt class="literal"><span class="pre">f1</span></tt>, <tt class="literal"><span class="pre">f2</span></tt>,... <tt class="literal"><span class="pre">fn</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./and.html" class="identifier">and_</a><f1,f2,<em>...</em>,f<em>n</em>>::type r;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference" href="./integral-constant.html">Integral Constant</a>.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference internal" href="./integral-constant.html">Integral Constant</a>.</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><tt class="literal"><span class="pre">r</span></tt> is <tt class="literal"><span class="pre">false_</span></tt> if either of <tt class="literal"><span class="pre">f1::type::value</span></tt>, <tt class="literal"><span class="pre">f2::type::value</span></tt>,...
|
||||
<tt class="literal"><span class="pre">fn::type::value</span></tt> expressions evaluates to <tt class="literal"><span class="pre">false</span></tt>, and <tt class="literal"><span class="pre">true_</span></tt> otherwise;
|
||||
guarantees left-to-right evaluation; the operands subsequent to the first
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><tt class="literal"><span class="pre">r</span></tt> is <tt class="literal"><span class="pre"><a href="./bool.html" class="identifier">false_</a></span></tt> if either of <tt class="literal"><span class="pre">f1::type::value</span></tt>, <tt class="literal"><span class="pre">f2::type::value</span></tt>,...
|
||||
<tt class="literal"><span class="pre">fn::type::value</span></tt> expressions evaluates to <tt class="literal"><span class="pre">false</span></tt>, and <tt class="literal"><span class="pre"><a href="./bool.html" class="identifier">true_</a></span></tt> otherwise;
|
||||
guarantees left-to-right evaluation; the operands subsequent to the first
|
||||
<tt class="literal"><span class="pre">f</span></tt><em>i</em> metafunction that evaluates to <tt class="literal"><span class="pre">false</span></tt> are not evaluated.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
@@ -87,11 +84,12 @@ guarantees left-to-right evaluation; the operands subsequent to the first
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./and.html" class="identifier">and_</a><f1,f2,<em>...</em>,f<em>n</em>> r;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference" href="./integral-constant.html">Integral Constant</a>.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><a class="reference internal" href="./integral-constant.html">Integral Constant</a>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Equivalent to</p>
|
||||
<pre class="last literal-block">
|
||||
@@ -102,28 +100,29 @@ struct r : <a href="./and.html" class="identifier">and_</a><f1,f2,<em>...</em
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="and-example">
|
||||
<div class="section" id="id1073">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
struct unknown;
|
||||
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( <a href="./and.html" class="identifier">and_</a>< true_,true_ > ));
|
||||
<a href="./assert-not.html" class="identifier">BOOST_MPL_ASSERT_NOT</a>(( <a href="./and.html" class="identifier">and_</a>< false_,true_ > ));
|
||||
<a href="./assert-not.html" class="identifier">BOOST_MPL_ASSERT_NOT</a>(( <a href="./and.html" class="identifier">and_</a>< true_,false_ > ));
|
||||
<a href="./assert-not.html" class="identifier">BOOST_MPL_ASSERT_NOT</a>(( <a href="./and.html" class="identifier">and_</a>< false_,false_ > ));
|
||||
<a href="./assert-not.html" class="identifier">BOOST_MPL_ASSERT_NOT</a>(( <a href="./and.html" class="identifier">and_</a>< false_,unknown > )); // OK
|
||||
<a href="./assert-not.html" class="identifier">BOOST_MPL_ASSERT_NOT</a>(( <a href="./and.html" class="identifier">and_</a>< false_,unknown,unknown > )); // OK too
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( <a href="./and.html" class="identifier">and_</a>< <a href="./bool.html" class="identifier">true_</a>,<a href="./bool.html" class="identifier">true_</a> > ));
|
||||
<a href="./assert-not.html" class="identifier">BOOST_MPL_ASSERT_NOT</a>(( <a href="./and.html" class="identifier">and_</a>< <a href="./bool.html" class="identifier">false_</a>,<a href="./bool.html" class="identifier">true_</a> > ));
|
||||
<a href="./assert-not.html" class="identifier">BOOST_MPL_ASSERT_NOT</a>(( <a href="./and.html" class="identifier">and_</a>< <a href="./bool.html" class="identifier">true_</a>,<a href="./bool.html" class="identifier">false_</a> > ));
|
||||
<a href="./assert-not.html" class="identifier">BOOST_MPL_ASSERT_NOT</a>(( <a href="./and.html" class="identifier">and_</a>< <a href="./bool.html" class="identifier">false_</a>,<a href="./bool.html" class="identifier">false_</a> > ));
|
||||
<a href="./assert-not.html" class="identifier">BOOST_MPL_ASSERT_NOT</a>(( <a href="./and.html" class="identifier">and_</a>< <a href="./bool.html" class="identifier">false_</a>,unknown > )); // OK
|
||||
<a href="./assert-not.html" class="identifier">BOOST_MPL_ASSERT_NOT</a>(( <a href="./and.html" class="identifier">and_</a>< <a href="./bool.html" class="identifier">false_</a>,unknown,unknown > )); // OK too
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="and-see-also">
|
||||
<div class="section" id="id1074">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./metafunctions.html">Metafunctions</a>, <a class="reference" href="./logical-operations.html">Logical Operations</a>, <a class="refentry reference" href="./or.html"><tt class="refentry literal"><span class="pre">or_</span></tt></a>, <a class="refentry reference" href="./not.html"><tt class="refentry literal"><span class="pre">not_</span></tt></a></p>
|
||||
<!-- modtime: November 10, 2004 04:46:17 +0000 -->
|
||||
<p><a class="reference internal" href="./metafunctions.html">Metafunctions</a>, <a class="reference internal" href="./logical-operations.html">Logical Operations</a>, <a class="reference internal" href="./or.html">or_</a>, <a class="reference internal" href="./not.html">not_</a></p>
|
||||
<!-- Metafunctions/Logical Operations//or_ |20 -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./logical-operations.html" class="navigation-link">Prev</a> <a href="./or.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group">Back <a href="./or.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./logical-operations.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: apply_wrap</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,11 +12,11 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./metafunctions.html" class="navigation-link">Metafunctions</a> / <a href="./invocation.html" class="navigation-link">Invocation</a> / <a href="./apply-wrap.html" class="navigation-link">apply_wrap</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="apply-wrap">
|
||||
<h1><a class="toc-backref" href="./invocation.html#id452" name="apply-wrap">apply_wrap</a></h1>
|
||||
<div class="section" id="invocation-apply-synopsis">
|
||||
<h1><a class="toc-backref" href="./invocation.html#id1526">apply_wrap</a></h1>
|
||||
<div class="section" id="id894">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
template<
|
||||
typename F
|
||||
>
|
||||
struct apply_wrap0
|
||||
@@ -27,7 +24,7 @@ struct apply_wrap0
|
||||
typedef <em>unspecified</em> type;
|
||||
};
|
||||
|
||||
template<
|
||||
template<
|
||||
typename F, typename A1
|
||||
>
|
||||
struct apply_wrap1
|
||||
@@ -37,7 +34,7 @@ struct apply_wrap1
|
||||
|
||||
<em>...</em>
|
||||
|
||||
template<
|
||||
template<
|
||||
typename F, typename A1,<em>...</em> typename An
|
||||
>
|
||||
struct <a href="./apply-wrap.html" class="identifier">apply_wrap</a><em>n</em>
|
||||
@@ -46,37 +43,37 @@ struct <a href="./apply-wrap.html" class="identifier">apply_wrap</a><em>n</em>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="invocation-apply-description">
|
||||
<div class="section" id="id895">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Invokes a <a class="reference" href="./metafunction-class.html">Metafunction Class</a> <tt class="literal"><span class="pre">F</span></tt> with arguments <tt class="literal"><span class="pre">A1</span></tt>,... <tt class="literal"><span class="pre">An</span></tt>.</p>
|
||||
<p>In essence, <tt class="literal"><span class="pre"><a href="./apply-wrap.html" class="identifier">apply_wrap</a></span></tt> forms are nothing more than syntactic wrappers around
|
||||
<tt class="literal"><span class="pre">F::<a href="./apply.html" class="identifier">apply</a><A1,...</span> <span class="pre">An>::type</span></tt> / <tt class="literal"><span class="pre">F::<a href="./apply.html" class="identifier">apply</a>::type</span></tt> expressions (hence the name).
|
||||
They provide a more concise notation and higher portability than their
|
||||
<p>Invokes a <a class="reference internal" href="./metafunction-class.html">Metafunction Class</a> <tt class="literal"><span class="pre">F</span></tt> with arguments <tt class="literal"><span class="pre">A1</span></tt>,... <tt class="literal"><span class="pre">An</span></tt>.</p>
|
||||
<p>In essence, <tt class="literal"><span class="pre"><a href="./apply-wrap.html" class="identifier">apply_wrap</a></span></tt> forms are nothing more than syntactic wrappers around
|
||||
<tt class="literal"><span class="pre">F::<a href="./apply.html" class="identifier">apply</a><A1,...</span> <span class="pre">An>::type</span></tt> / <tt class="literal"><span class="pre">F::<a href="./apply.html" class="identifier">apply</a>::type</span></tt> expressions (hence the name).
|
||||
They provide a more concise notation and higher portability than their
|
||||
underlaying constructs at the cost of an extra template instantiation.</p>
|
||||
</div>
|
||||
<div class="section" id="invocation-apply-header">
|
||||
<div class="section" id="id896">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/apply_wrap.hpp" class="header">boost/mpl/apply_wrap.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="invocation-apply-parameters">
|
||||
<div class="section" id="id897">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="15%" />
|
||||
<col width="36%" />
|
||||
<col width="48%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">F</span></tt></td>
|
||||
<td><a class="reference" href="./metafunction-class.html">Metafunction Class</a></td>
|
||||
<td><a class="reference internal" href="./metafunction-class.html">Metafunction Class</a></td>
|
||||
<td>A metafunction class to invoke.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre">A1</span></tt>,... <tt class="literal"><span class="pre">An</span></tt></td>
|
||||
@@ -86,13 +83,13 @@ underlaying constructs at the cost of an extra template instantiation.</p>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="invocation-apply-expression-semantics">
|
||||
<div class="section" id="id898">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For any <a class="reference" href="./metafunction-class.html">Metafunction Class</a> <tt class="literal"><span class="pre">f</span></tt> and arbitrary types <tt class="literal"><span class="pre">a1</span></tt>,... <tt class="literal"><span class="pre">an</span></tt>:</p>
|
||||
<p>For any <a class="reference internal" href="./metafunction-class.html">Metafunction Class</a> <tt class="literal"><span class="pre">f</span></tt> and arbitrary types <tt class="literal"><span class="pre">a1</span></tt>,... <tt class="literal"><span class="pre">an</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./apply-wrap.html" class="identifier">apply_wrap</a><em>n</em><f,a1,<em>...</em>an>::type t;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
@@ -100,13 +97,13 @@ typedef <a href="./apply-wrap.html" class="identifier">apply_wrap</a><em>n</em>&
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body">If <tt class="literal"><span class="pre">n</span> <span class="pre">></span> <span class="pre">0</span></tt>, equivalent to <tt class="literal"><span class="pre">typedef</span> <span class="pre">f::<a href="./apply.html" class="identifier">apply</a><a1,...</span> <span class="pre">an>::type</span> <span class="pre">t;</span></tt>,
|
||||
otherwise equivalent to either <tt class="literal"><span class="pre">typedef</span> <span class="pre">f::<a href="./apply.html" class="identifier">apply</a>::type</span> <span class="pre">t;</span></tt> or
|
||||
<tt class="literal"><span class="pre">typedef</span> <span class="pre">f::<a href="./apply.html" class="identifier">apply</a><>::type</span> <span class="pre">t;</span></tt> depending on whether <tt class="literal"><span class="pre">f::<a href="./apply.html" class="identifier">apply</a></span></tt> is
|
||||
<tt class="literal"><span class="pre">typedef</span> <span class="pre">f::<a href="./apply.html" class="identifier">apply</a><>::type</span> <span class="pre">t;</span></tt> depending on whether <tt class="literal"><span class="pre">f::<a href="./apply.html" class="identifier">apply</a></span></tt> is
|
||||
a class or a class template.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="invocation-apply-example">
|
||||
<div class="section" id="id899">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
struct f0
|
||||
@@ -116,7 +113,7 @@ struct f0
|
||||
typedef char type;
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
struct g0
|
||||
{
|
||||
struct <a href="./apply.html" class="identifier">apply</a> { typedef char type; };
|
||||
@@ -140,15 +137,16 @@ typedef <a href="./apply-wrap.html" class="identifier">apply_wrap</a><tt class="
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( is_same<r3,char> ));
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="invocation-apply-see-also">
|
||||
<div class="section" id="id900">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./metafunctions.html">Metafunctions</a>, <a class="reference" href="./invocation.html">invocation</a>, <a class="refentry reference" href="./apply.html"><tt class="refentry literal"><span class="pre">apply</span></tt></a>, <a class="refentry reference" href="./lambda.html"><tt class="refentry literal"><span class="pre">lambda</span></tt></a>, <a class="refentry reference" href="./quote.html"><tt class="refentry literal"><span class="pre">quote</span></tt></a>, <a class="refentry reference" href="./bind.html"><tt class="refentry literal"><span class="pre">bind</span></tt></a>, <a class="refentry reference" href="./protect.html"><tt class="refentry literal"><span class="pre">protect</span></tt></a></p>
|
||||
<!-- modtime: November 10, 2004 04:46:09 +0000 -->
|
||||
<p><a class="reference internal" href="./metafunctions.html">Metafunctions</a>, <a class="reference internal" href="./invocation.html">invocation</a>, <a class="reference internal" href="./apply.html">apply</a>, <a class="reference internal" href="./lambda.html">lambda</a>, <a class="reference internal" href="./quote.html">quote</a>, <a class="reference internal" href="./bind.html">bind</a>, <a class="reference internal" href="./protect.html">protect</a></p>
|
||||
<!-- Metafunctions/Invocation//unpack_args |30 -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./apply.html" class="navigation-link">Prev</a> <a href="./unpack-args.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./apply.html" class="navigation-link">Back</a> <a href="./unpack-args.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./invocation.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+26
-28
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: apply</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,11 +12,11 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./metafunctions.html" class="navigation-link">Metafunctions</a> / <a href="./invocation.html" class="navigation-link">Invocation</a> / <a href="./apply.html" class="navigation-link">apply</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="apply">
|
||||
<h1><a class="toc-backref" href="./invocation.html#id451" name="apply">apply</a></h1>
|
||||
<div class="section" id="apply-synopsis">
|
||||
<h1><a class="toc-backref" href="./invocation.html#id1525">apply</a></h1>
|
||||
<div class="section" id="id887">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
template<
|
||||
typename F
|
||||
>
|
||||
struct apply0
|
||||
@@ -27,7 +24,7 @@ struct apply0
|
||||
typedef <em>unspecified</em> type;
|
||||
};
|
||||
|
||||
template<
|
||||
template<
|
||||
typename F, typename A1
|
||||
>
|
||||
struct apply1
|
||||
@@ -37,7 +34,7 @@ struct apply1
|
||||
|
||||
<em>...</em>
|
||||
|
||||
template<
|
||||
template<
|
||||
typename F, typename A1,<em>...</em> typename An
|
||||
>
|
||||
struct <a href="./apply.html" class="identifier">apply</a><em>n</em>
|
||||
@@ -45,7 +42,7 @@ struct <a href="./apply.html" class="identifier">apply</a><em>n</em>
|
||||
typedef <em>unspecified</em> type;
|
||||
};
|
||||
|
||||
template<
|
||||
template<
|
||||
typename F
|
||||
, typename A1 = <em>unspecified</em>
|
||||
<em>...</em>
|
||||
@@ -57,33 +54,33 @@ struct <a href="./apply.html" class="identifier">apply</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="apply-description">
|
||||
<div class="section" id="id888">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Invokes a <a class="reference" href="./metafunction-class.html">Metafunction Class</a> or a <a class="reference" href="./lambda-expression.html">Lambda Expression</a> <tt class="literal"><span class="pre">F</span></tt> with arguments <tt class="literal"><span class="pre">A1</span></tt>,... <tt class="literal"><span class="pre">An</span></tt>.</p>
|
||||
<p>Invokes a <a class="reference internal" href="./metafunction-class.html">Metafunction Class</a> or a <a class="reference internal" href="./lambda-expression.html">Lambda Expression</a> <tt class="literal"><span class="pre">F</span></tt> with arguments <tt class="literal"><span class="pre">A1</span></tt>,... <tt class="literal"><span class="pre">An</span></tt>.</p>
|
||||
</div>
|
||||
<div class="section" id="apply-header">
|
||||
<div class="section" id="id889">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/apply.hpp" class="header">boost/mpl/apply.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="apply-parameters">
|
||||
<div class="section" id="id890">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="15%" />
|
||||
<col width="36%" />
|
||||
<col width="48%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">F</span></tt></td>
|
||||
<td><a class="reference" href="./lambda-expression.html">Lambda Expression</a></td>
|
||||
<td><a class="reference internal" href="./lambda-expression.html">Lambda Expression</a></td>
|
||||
<td>An expression to invoke.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre">A1</span></tt>,... <tt class="literal"><span class="pre">An</span></tt></td>
|
||||
@@ -93,14 +90,14 @@ struct <a href="./apply.html" class="identifier">apply</a>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="apply-expression-semantics">
|
||||
<div class="section" id="id891">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For any <a class="reference" href="./lambda-expression.html">Lambda Expression</a> <tt class="literal"><span class="pre">f</span></tt> and arbitrary types <tt class="literal"><span class="pre">a1</span></tt>,... <tt class="literal"><span class="pre">an</span></tt>:</p>
|
||||
<p>For any <a class="reference internal" href="./lambda-expression.html">Lambda Expression</a> <tt class="literal"><span class="pre">f</span></tt> and arbitrary types <tt class="literal"><span class="pre">a1</span></tt>,... <tt class="literal"><span class="pre">an</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./apply.html" class="identifier">apply</a><em>n</em><f,a1,<em>...</em>a<em>n</em>>::type t;
|
||||
typedef <a href="./apply.html" class="identifier">apply</a><f,a1,<em>...</em>a<em>n</em>>::type t;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
@@ -111,7 +108,7 @@ typedef <a href="./apply.html" class="identifier">apply</a><f,a1,<em>...</em>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="apply-example">
|
||||
<div class="section" id="id892">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
template< typename N1, typename N2 > struct int_plus
|
||||
@@ -119,22 +116,23 @@ template< typename N1, typename N2 > struct int_plus
|
||||
{
|
||||
};
|
||||
|
||||
typedef <a href="./apply.html" class="identifier">apply</a>< int_plus<_1,_2>, <a href="./int.html" class="identifier">int_</a><2>, <a href="./int.html" class="identifier">int_</a><3> >::type r1;
|
||||
typedef <a href="./apply.html" class="identifier">apply</a>< int_plus<<a href="./placeholders.html" class="identifier">_1</a>,<a href="./placeholders.html" class="identifier">_2</a>>, <a href="./int.html" class="identifier">int_</a><2>, <a href="./int.html" class="identifier">int_</a><3> >::type r1;
|
||||
typedef <a href="./apply.html" class="identifier">apply</a>< <a href="./quote.html" class="identifier">quote</a><tt class="literal"><span class="pre">2</span></tt><int_plus>, <a href="./int.html" class="identifier">int_</a><2>, <a href="./int.html" class="identifier">int_</a><3> >::type r2;
|
||||
|
||||
<a href="./assert-relation.html" class="identifier">BOOST_MPL_ASSERT_RELATION</a>( r1::value, ==, 5 );
|
||||
<a href="./assert-relation.html" class="identifier">BOOST_MPL_ASSERT_RELATION</a>( r2::value, ==, 5 );
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="apply-see-also">
|
||||
<div class="section" id="id893">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./metafunctions.html">Metafunctions</a>, <a class="refentry reference" href="./apply-wrap.html"><tt class="refentry literal"><span class="pre">apply_wrap</span></tt></a>, <a class="refentry reference" href="./lambda.html"><tt class="refentry literal"><span class="pre">lambda</span></tt></a>, <a class="refentry reference" href="./quote.html"><tt class="refentry literal"><span class="pre">quote</span></tt></a>, <a class="refentry reference" href="./bind.html"><tt class="refentry literal"><span class="pre">bind</span></tt></a></p>
|
||||
<!-- modtime: November 10, 2004 04:46:13 +0000 -->
|
||||
<p><a class="reference internal" href="./metafunctions.html">Metafunctions</a>, <a class="reference internal" href="./apply-wrap.html">apply_wrap</a>, <a class="reference internal" href="./lambda.html">lambda</a>, <a class="reference internal" href="./quote.html">quote</a>, <a class="reference internal" href="./bind.html">bind</a></p>
|
||||
<!-- Metafunctions/Invocation//apply_wrap |20 -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./invocation.html" class="navigation-link">Prev</a> <a href="./apply-wrap.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group">Back <a href="./apply-wrap.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./invocation.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+23
-25
@@ -1,22 +1,19 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: arg</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
<body class="docframe refmanual">
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./quote.html" class="navigation-link">Prev</a> <a href="./protect.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./quote.html" class="navigation-link">Back</a> <a href="./protect.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./composition-and-argument.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./metafunctions.html" class="navigation-link">Metafunctions</a> / <a href="./composition-and-argument.html" class="navigation-link">Composition and Argument Binding</a> / <a href="./arg.html" class="navigation-link">arg</a></td>
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./quote.html" class="navigation-link">Prev</a> <a href="./protect.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./quote.html" class="navigation-link">Back</a> <a href="./protect.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./composition-and-argument-binding.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./metafunctions.html" class="navigation-link">Metafunctions</a> / <a href="./composition-and-argument-binding.html" class="navigation-link">Composition and Argument Binding</a> / <a href="./arg.html" class="navigation-link">arg</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="arg">
|
||||
<h1><a class="toc-backref" href="./composition-and-argument.html#id459" name="arg">arg</a></h1>
|
||||
<div class="section" id="arg-synopsis">
|
||||
<h1><a class="toc-backref" href="./composition-and-argument-binding.html#id1533">arg</a></h1>
|
||||
<div class="section" id="id946">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template< int n > struct <a href="./arg.html" class="identifier">arg</a>;
|
||||
@@ -42,28 +39,28 @@ template<> struct <a href="./arg.html" class="identifier">arg</a><<em>n
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="arg-description">
|
||||
<div class="section" id="id947">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p><tt class="literal"><span class="pre"><a href="./arg.html" class="identifier">arg</a><n></span></tt> specialization is a <a class="reference" href="./metafunction-class.html">Metafunction Class</a> that return the <tt class="literal"><span class="pre">n</span></tt>th of its arguments.</p>
|
||||
<p><tt class="literal"><span class="pre"><a href="./arg.html" class="identifier">arg</a><n></span></tt> specialization is a <a class="reference internal" href="./metafunction-class.html">Metafunction Class</a> that return the <tt class="literal"><span class="pre">n</span></tt>th of its arguments.</p>
|
||||
</div>
|
||||
<div class="section" id="arg-header">
|
||||
<div class="section" id="id948">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/arg.hpp" class="header">boost/mpl/arg.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="arg-parameters">
|
||||
<div class="section" id="id949">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="15%" />
|
||||
<col width="36%" />
|
||||
<col width="48%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
@@ -74,14 +71,14 @@ template<> struct <a href="./arg.html" class="identifier">arg</a><<em>n
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="arg-expression-semantics">
|
||||
<div class="section" id="id950">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For any integral constant <tt class="literal"><span class="pre">n</span></tt> in the range [1, <a class="refentry reference" href="./limit-metafunction-arity.html"><tt class="refentry literal"><span class="pre">BOOST_MPL_LIMIT_METAFUNCTION_ARITY</span></tt></a>] and
|
||||
<p>For any integral constant <tt class="literal"><span class="pre">n</span></tt> in the range [1, <a class="reference internal" href="./limit-metafunction-arity.html">BOOST_MPL_LIMIT_METAFUNCTION_ARITY</a>] and
|
||||
arbitrary types <tt class="literal"><span class="pre">a1</span></tt>,... <tt class="literal"><span class="pre">an</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./apply-wrap.html" class="identifier">apply_wrap</a><em>n</em>< <a href="./arg.html" class="identifier">arg</a><<em>n</em>>,a1,<em>...</em>a<em>n</em> >::type x;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
@@ -92,7 +89,7 @@ typedef <a href="./apply-wrap.html" class="identifier">apply_wrap</a><em>n</em>&
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="arg-example">
|
||||
<div class="section" id="id951">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./apply-wrap.html" class="identifier">apply_wrap</a><tt class="literal"><span class="pre">5</span></tt>< <a href="./arg.html" class="identifier">arg</a><1>,bool,char,short,int,long >::type t1;
|
||||
@@ -102,15 +99,16 @@ typedef <a href="./apply-wrap.html" class="identifier">apply_wrap</a><tt class="
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( is_same< t3, short > ));
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="arg-see-also">
|
||||
<div class="section" id="id952">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./composition-and-argument.html">Composition and Argument Binding</a>, <a class="reference" href="./placeholders.html">Placeholders</a>, <a class="refentry reference" href="./lambda.html"><tt class="refentry literal"><span class="pre">lambda</span></tt></a>, <a class="refentry reference" href="./bind.html"><tt class="refentry literal"><span class="pre">bind</span></tt></a>, <a class="refentry reference" href="./apply.html"><tt class="refentry literal"><span class="pre">apply</span></tt></a>, <a class="refentry reference" href="./apply-wrap.html"><tt class="refentry literal"><span class="pre">apply_wrap</span></tt></a></p>
|
||||
<!-- modtime: November 13, 2004 18:35:04 +0000 -->
|
||||
<p><a class="reference internal" href="./composition-and-argument-binding.html">Composition and Argument Binding</a>, <a class="reference internal" href="./placeholders.html">Placeholders</a>, <a class="reference internal" href="./lambda.html">lambda</a>, <a class="reference internal" href="./bind.html">bind</a>, <a class="reference internal" href="./apply.html">apply</a>, <a class="reference internal" href="./apply-wrap.html">apply_wrap</a></p>
|
||||
<!-- Metafunctions/Composition and Argument Binding//protect |60 -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./quote.html" class="navigation-link">Prev</a> <a href="./protect.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./quote.html" class="navigation-link">Back</a> <a href="./protect.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./composition-and-argument.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./quote.html" class="navigation-link">Prev</a> <a href="./protect.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./quote.html" class="navigation-link">Back</a> <a href="./protect.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./composition-and-argument-binding.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
@@ -1,34 +1,32 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: Arithmetic Operations</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
<body class="docframe refmanual">
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./protect.html" class="navigation-link">Prev</a> <a href="./plus.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./composition-and-argument.html" class="navigation-link">Back</a> <a href="./comparisons.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./metafunctions.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./protect.html" class="navigation-link">Prev</a> <a href="./plus.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./composition-and-argument-binding.html" class="navigation-link">Back</a> <a href="./comparisons.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./metafunctions.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./metafunctions.html" class="navigation-link">Metafunctions</a> / <a href="./arithmetic-operations.html" class="navigation-link">Arithmetic Operations</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="arithmetic-operations">
|
||||
<h1><a class="toc-backref" href="./metafunctions.html#id461" name="arithmetic-operations">Arithmetic Operations</a></h1>
|
||||
<a class="target" id="id227" name="id227"></a><!-- modtime: November 08, 2004 05:37:53 +0000 -->
|
||||
<!-- Metafunctions/Arithmetic Operations//plus |10 -->
|
||||
<h1><a class="toc-backref" href="./metafunctions.html#id1535">Arithmetic Operations</a></h1>
|
||||
<span class="target" id="label-metafunctions-arithmetic-operations"></span><!-- Metafunctions/Arithmetic Operations//plus |10 -->
|
||||
<ul class="toc simple" id="outline">
|
||||
<li><a class="reference" href="./plus.html" id="id462" name="id462">plus</a></li>
|
||||
<li><a class="reference" href="./minus.html" id="id463" name="id463">minus</a></li>
|
||||
<li><a class="reference" href="./times.html" id="id464" name="id464">times</a></li>
|
||||
<li><a class="reference" href="./divides.html" id="id465" name="id465">divides</a></li>
|
||||
<li><a class="reference" href="./modulus.html" id="id466" name="id466">modulus</a></li>
|
||||
<li><a class="reference" href="./negate.html" id="id467" name="id467">negate</a></li>
|
||||
<li><a class="reference internal" href="./plus.html" id="id1536">plus</a></li>
|
||||
<li><a class="reference internal" href="./minus.html" id="id1537">minus</a></li>
|
||||
<li><a class="reference internal" href="./times.html" id="id1538">times</a></li>
|
||||
<li><a class="reference internal" href="./divides.html" id="id1539">divides</a></li>
|
||||
<li><a class="reference internal" href="./modulus.html" id="id1540">modulus</a></li>
|
||||
<li><a class="reference internal" href="./negate.html" id="id1541">negate</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./protect.html" class="navigation-link">Prev</a> <a href="./plus.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./composition-and-argument.html" class="navigation-link">Back</a> <a href="./comparisons.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./metafunctions.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./protect.html" class="navigation-link">Prev</a> <a href="./plus.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./composition-and-argument-binding.html" class="navigation-link">Back</a> <a href="./comparisons.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./metafunctions.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: BOOST_MPL_ASSERT_MSG</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -14,9 +11,9 @@
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./assert.html" class="navigation-link">Prev</a> <a href="./assert-not.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./assert.html" class="navigation-link">Back</a> <a href="./assert-not.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./asserts.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./macros.html" class="navigation-link">Macros</a> / <a href="./asserts.html" class="navigation-link">Asserts</a> / <a href="./assert-msg.html" class="navigation-link">BOOST_MPL_ASSERT_MSG</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="assert-msg">
|
||||
<h1><a class="toc-backref" href="./asserts.html#id512" name="assert-msg">BOOST_MPL_ASSERT_MSG</a></h1>
|
||||
<div class="section" id="asserts-assert-synopsis">
|
||||
<div class="section" id="boost-mpl-assert-msg">
|
||||
<h1><a class="toc-backref" href="./asserts.html#id1589">BOOST_MPL_ASSERT_MSG</a></h1>
|
||||
<div class="section" id="id1294">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
#define <a href="./assert-msg.html" class="identifier">BOOST_MPL_ASSERT_MSG</a>( condition, message, types ) \
|
||||
@@ -24,29 +21,29 @@
|
||||
/**/
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="asserts-assert-description">
|
||||
<div class="section" id="id1295">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Generates a compilation error with an embedded custom message when the condition
|
||||
<p>Generates a compilation error with an embedded custom message when the condition
|
||||
doesn't hold.</p>
|
||||
</div>
|
||||
<div class="section" id="asserts-assert-header">
|
||||
<div class="section" id="id1296">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/assert.hpp" class="header">boost/mpl/assert.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="asserts-assert-parameters">
|
||||
<div class="section" id="id1297">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="15%" />
|
||||
<col width="36%" />
|
||||
<col width="48%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
@@ -67,25 +64,27 @@ in the error message.</td>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="asserts-assert-expression-semantics">
|
||||
<div class="section" id="id1298">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For any integral constant expression <tt class="literal"><span class="pre">expr</span></tt>, legal C++ identifier <tt class="literal"><span class="pre">message</span></tt>, and
|
||||
<p>For any integral constant expression <tt class="literal"><span class="pre">expr</span></tt>, legal C++ identifier <tt class="literal"><span class="pre">message</span></tt>, and
|
||||
arbitrary types <tt class="literal"><span class="pre">t1</span></tt>, <tt class="literal"><span class="pre">t2</span></tt>,... <tt class="literal"><span class="pre">tn</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
<a href="./assert-msg.html" class="identifier">BOOST_MPL_ASSERT_MSG</a>( expr, message, (t1, t2,... tn) );
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body">None.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first">None.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body"><tt class="literal"><span class="pre">t1</span></tt>, <tt class="literal"><span class="pre">t2</span></tt>,... <tt class="literal"><span class="pre">tn</span></tt> are non-<tt class="literal"><span class="pre">void</span></tt>.</td>
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body"><p class="first"><tt class="literal"><span class="pre">t1</span></tt>, <tt class="literal"><span class="pre">t2</span></tt>,... <tt class="literal"><span class="pre">tn</span></tt> are non-<tt class="literal"><span class="pre">void</span></tt>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Generates a compilation error if <tt class="literal"><span class="pre">expr::value</span> <span class="pre">!=</span> <span class="pre">true</span></tt>, otherwise
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Generates a compilation error if <tt class="literal"><span class="pre">expr</span> <span class="pre">!=</span> <span class="pre">true</span></tt>, otherwise
|
||||
has no effect.</p>
|
||||
<p>When possible within the compiler's diagnostic capabilities,
|
||||
the error message will include the <tt class="literal"><span class="pre">message</span></tt> identifier and the parenthized
|
||||
the error message will include the <tt class="literal"><span class="pre">message</span></tt> identifier and the parenthized
|
||||
list of <tt class="literal"><span class="pre">t1</span></tt>, <tt class="literal"><span class="pre">t2</span></tt>,... <tt class="literal"><span class="pre">tn</span></tt> types, and have a general form of:</p>
|
||||
<pre class="last literal-block">
|
||||
<em>...</em> ************( <em>...</em>::message )************)(t1, t2,... tn) <em>...</em>
|
||||
@@ -97,18 +96,20 @@ list of <tt class="literal"><span class="pre">t1</span></tt>, <tt class="literal
|
||||
<pre class="literal-block">
|
||||
<a href="./assert-msg.html" class="identifier">BOOST_MPL_ASSERT_MSG</a>( expr, message, (types<t1, t2,... tn>) );
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body">None.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first">None.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body">None.</td>
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body"><p class="first">None.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Generates a compilation error if <tt class="literal"><span class="pre">expr::value</span> <span class="pre">!=</span> <span class="pre">true</span></tt>, otherwise
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Generates a compilation error if <tt class="literal"><span class="pre">expr</span> <span class="pre">!=</span> <span class="pre">true</span></tt>, otherwise
|
||||
has no effect.</p>
|
||||
<p>When possible within the compiler's diagnostics capabilities,
|
||||
the error message will include the <tt class="literal"><span class="pre">message</span></tt> identifier and the list of
|
||||
the error message will include the <tt class="literal"><span class="pre">message</span></tt> identifier and the list of
|
||||
<tt class="literal"><span class="pre">t1</span></tt>, <tt class="literal"><span class="pre">t2</span></tt>,... <tt class="literal"><span class="pre">tn</span></tt> types, and have a general form of:</p>
|
||||
<pre class="last literal-block">
|
||||
<em>...</em> ************( <em>...</em>::message )************)(types<t1, t2,... tn>) <em>...</em>
|
||||
@@ -118,13 +119,13 @@ the error message will include the <tt class="literal"><span class="pre">message
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="asserts-assert-example">
|
||||
<div class="section" id="id1299">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
template< typename T > struct my
|
||||
{
|
||||
// ...
|
||||
<a href="./assert-msg.html" class="identifier">BOOST_MPL_ASSERT_MSG</a>(
|
||||
<a href="./assert-msg.html" class="identifier">BOOST_MPL_ASSERT_MSG</a>(
|
||||
is_integral<T>::value
|
||||
, NON_INTEGRAL_TYPES_ARE_NOT_ALLOWED
|
||||
, (T)
|
||||
@@ -141,15 +142,16 @@ my<void*> test;
|
||||
// ' to non-scalar type `mpl_::assert<false>' requested
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="asserts-assert-see-also">
|
||||
<div class="section" id="id1300">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./asserts.html">Asserts</a>, <a class="refentry reference" href="./assert.html"><tt class="refentry literal"><span class="pre">BOOST_MPL_ASSERT</span></tt></a>, <a class="refentry reference" href="./assert-not.html"><tt class="refentry literal"><span class="pre">BOOST_MPL_ASSERT_NOT</span></tt></a>, <a class="refentry reference" href="./assert-relation.html"><tt class="refentry literal"><span class="pre">BOOST_MPL_ASSERT_RELATION</span></tt></a></p>
|
||||
<!-- modtime: November 10, 2004 04:45:24 +0000 -->
|
||||
<p><a class="reference internal" href="./asserts.html">Asserts</a>, <a class="reference internal" href="./assert.html">BOOST_MPL_ASSERT</a>, <a class="reference internal" href="./assert-not.html">BOOST_MPL_ASSERT_NOT</a>, <a class="reference internal" href="./assert-relation.html">BOOST_MPL_ASSERT_RELATION</a></p>
|
||||
<!-- Macros/Asserts//BOOST_MPL_ASSERT_NOT -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./assert.html" class="navigation-link">Prev</a> <a href="./assert-not.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./assert.html" class="navigation-link">Back</a> <a href="./assert-not.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./asserts.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: BOOST_MPL_ASSERT_NOT</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -14,9 +11,9 @@
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./assert-msg.html" class="navigation-link">Prev</a> <a href="./assert-relation.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./assert-msg.html" class="navigation-link">Back</a> <a href="./assert-relation.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./asserts.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./macros.html" class="navigation-link">Macros</a> / <a href="./asserts.html" class="navigation-link">Asserts</a> / <a href="./assert-not.html" class="navigation-link">BOOST_MPL_ASSERT_NOT</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="assert-not">
|
||||
<h1><a class="toc-backref" href="./asserts.html#id513" name="assert-not">BOOST_MPL_ASSERT_NOT</a></h1>
|
||||
<div class="section" id="macros-asserts-assert-synopsis">
|
||||
<div class="section" id="boost-mpl-assert-not">
|
||||
<h1><a class="toc-backref" href="./asserts.html#id1590">BOOST_MPL_ASSERT_NOT</a></h1>
|
||||
<div class="section" id="id1301">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
#define <a href="./assert-not.html" class="identifier">BOOST_MPL_ASSERT_NOT</a>( pred ) \
|
||||
@@ -24,55 +21,56 @@
|
||||
/**/
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="macros-asserts-assert-description">
|
||||
<div class="section" id="id1302">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Generates a compilation error when predicate holds true.</p>
|
||||
</div>
|
||||
<div class="section" id="macros-asserts-assert-header">
|
||||
<div class="section" id="id1303">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/assert.hpp" class="header">boost/mpl/assert.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="macros-asserts-assert-parameters">
|
||||
<div class="section" id="id1304">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="16%" />
|
||||
<col width="38%" />
|
||||
<col width="46%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">pred</span></tt></td>
|
||||
<td>Boolean nullary <a class="reference" href="./metafunction.html">Metafunction</a></td>
|
||||
<td>Boolean nullary <a class="reference internal" href="./metafunction.html">Metafunction</a></td>
|
||||
<td>A predicate to be asserted to be false.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="macros-asserts-assert-expression-semantics">
|
||||
<div class="section" id="id1305">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For any boolean nullary <a class="reference" href="./metafunction.html">Metafunction</a> <tt class="literal"><span class="pre">pred</span></tt>:</p>
|
||||
<p>For any boolean nullary <a class="reference internal" href="./metafunction.html">Metafunction</a> <tt class="literal"><span class="pre">pred</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
<a href="./assert-not.html" class="identifier">BOOST_MPL_ASSERT_NOT</a>(( pred ));
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body">None.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first">None.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Generates a compilation error if <tt class="literal"><span class="pre">pred::type::value</span> <span class="pre">!=</span> <span class="pre">false</span></tt>, otherwise
|
||||
has no effect. Note that double parentheses are required even if no commas
|
||||
has no effect. Note that double parentheses are required even if no commas
|
||||
appear in the condition.</p>
|
||||
<p>When possible within the compiler's diagnostic capabilities,
|
||||
the error message will include the predicate's full type name, and have a
|
||||
the error message will include the predicate's full type name, and have a
|
||||
general form of:</p>
|
||||
<pre class="last literal-block">
|
||||
<em>...</em> ************boost::mpl::<a href="./not.html" class="identifier">not_</a>< pred >::************ <em>...</em>
|
||||
@@ -82,7 +80,7 @@ general form of:</p>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="macros-asserts-assert-example">
|
||||
<div class="section" id="id1306">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
template< typename T, typename U > struct my
|
||||
@@ -96,19 +94,20 @@ my<void,void> test;
|
||||
// In instantiation of `my<void, void>':
|
||||
// instantiated from here
|
||||
// conversion from `
|
||||
// mpl_::failed************boost::mpl::<a href="./not.html" class="identifier">not_</a><boost::is_same<void, void>
|
||||
// mpl_::failed************boost::mpl::<a href="./not.html" class="identifier">not_</a><boost::is_same<void, void>
|
||||
// >::************' to non-scalar type `mpl_::assert<false>' requested
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="macros-asserts-assert-see-also">
|
||||
<div class="section" id="id1307">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./asserts.html">Asserts</a>, <a class="refentry reference" href="./assert.html"><tt class="refentry literal"><span class="pre">BOOST_MPL_ASSERT</span></tt></a>, <a class="refentry reference" href="./assert-msg.html"><tt class="refentry literal"><span class="pre">BOOST_MPL_ASSERT_MSG</span></tt></a>, <a class="refentry reference" href="./assert-relation.html"><tt class="refentry literal"><span class="pre">BOOST_MPL_ASSERT_RELATION</span></tt></a></p>
|
||||
<!-- modtime: November 10, 2004 04:45:20 +0000 -->
|
||||
<p><a class="reference internal" href="./asserts.html">Asserts</a>, <a class="reference internal" href="./assert.html">BOOST_MPL_ASSERT</a>, <a class="reference internal" href="./assert-msg.html">BOOST_MPL_ASSERT_MSG</a>, <a class="reference internal" href="./assert-relation.html">BOOST_MPL_ASSERT_RELATION</a></p>
|
||||
<!-- Macros/Asserts//BOOST_MPL_ASSERT_RELATION -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./assert-msg.html" class="navigation-link">Prev</a> <a href="./assert-relation.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./assert-msg.html" class="navigation-link">Back</a> <a href="./assert-relation.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./asserts.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: BOOST_MPL_ASSERT_RELATION</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -14,9 +11,9 @@
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./assert-not.html" class="navigation-link">Prev</a> <a href="./introspection.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./assert-not.html" class="navigation-link">Back</a> Along</span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./asserts.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./macros.html" class="navigation-link">Macros</a> / <a href="./asserts.html" class="navigation-link">Asserts</a> / <a href="./assert-relation.html" class="navigation-link">BOOST_MPL_ASSERT_RELATION</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="assert-relation">
|
||||
<h1><a class="toc-backref" href="./asserts.html#id514" name="assert-relation">BOOST_MPL_ASSERT_RELATION</a></h1>
|
||||
<div class="section" id="the-macros-asserts-assert-synopsis">
|
||||
<div class="section" id="boost-mpl-assert-relation">
|
||||
<h1><a class="toc-backref" href="./asserts.html#id1591">BOOST_MPL_ASSERT_RELATION</a></h1>
|
||||
<div class="section" id="id1308">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
#define <a href="./assert-relation.html" class="identifier">BOOST_MPL_ASSERT_RELATION</a>( x, relation, y ) \
|
||||
@@ -24,30 +21,30 @@
|
||||
/**/
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="the-macros-asserts-assert-description">
|
||||
<div class="section" id="id1309">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>A specialized assertion macro for checking numerical conditions. Generates
|
||||
a compilation error when the condition <tt class="literal"><span class="pre">(</span> <span class="pre">x</span> <span class="pre">relation</span> <span class="pre">y</span> <span class="pre">)</span></tt>
|
||||
<p>A specialized assertion macro for checking numerical conditions. Generates
|
||||
a compilation error when the condition <tt class="literal"><span class="pre">(</span> <span class="pre">x</span> <span class="pre">relation</span> <span class="pre">y</span> <span class="pre">)</span></tt>
|
||||
doesn't hold.</p>
|
||||
</div>
|
||||
<div class="section" id="the-macros-asserts-assert-header">
|
||||
<div class="section" id="id1310">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/assert.hpp" class="header">boost/mpl/assert.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="the-macros-asserts-assert-parameters">
|
||||
<div class="section" id="id1311">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="15%" />
|
||||
<col width="36%" />
|
||||
<col width="48%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
@@ -67,17 +64,18 @@ checked.</td>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="the-macros-asserts-assert-expression-semantics">
|
||||
<div class="section" id="id1312">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For any integral constants <tt class="literal"><span class="pre">x</span></tt>, <tt class="literal"><span class="pre">y</span></tt> and a legal C++ operator token <tt class="literal"><span class="pre">op</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
<a href="./assert-relation.html" class="identifier">BOOST_MPL_ASSERT_RELATION</a>( x, op, y );
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body">None.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first">None.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Generates a compilation error if <tt class="literal"><span class="pre">(</span> <span class="pre">x</span> <span class="pre">op</span> <span class="pre">y</span> <span class="pre">)</span> <span class="pre">!=</span> <span class="pre">true</span></tt>, otherwise
|
||||
has no effect.</p>
|
||||
@@ -92,7 +90,7 @@ the actual values of both operands, and have a general form of:</p>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="the-macros-asserts-assert-example">
|
||||
<div class="section" id="id1313">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
template< typename T, typename U > struct my
|
||||
@@ -106,18 +104,19 @@ my<char[50],char[10]> test;
|
||||
// In instantiation of `my<char[50], char[10]>':
|
||||
// instantiated from here
|
||||
// conversion from `
|
||||
// mpl_::failed************mpl_::assert_relation<<a href="./less.html" class="identifier">less</a>, 50, 10>::************'
|
||||
// mpl_::failed************mpl_::assert_relation<<a href="./less.html" class="identifier">less</a>, 50, 10>::************'
|
||||
// to non-scalar type `mpl_::assert<false>' requested
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="the-macros-asserts-assert-see-also">
|
||||
<div class="section" id="id1314">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./asserts.html">Asserts</a>, <a class="refentry reference" href="./assert.html"><tt class="refentry literal"><span class="pre">BOOST_MPL_ASSERT</span></tt></a>, <a class="refentry reference" href="./assert-not.html"><tt class="refentry literal"><span class="pre">BOOST_MPL_ASSERT_NOT</span></tt></a>, <a class="refentry reference" href="./assert-msg.html"><tt class="refentry literal"><span class="pre">BOOST_MPL_ASSERT_MSG</span></tt></a></p>
|
||||
<!-- modtime: November 10, 2004 04:45:16 +0000 -->
|
||||
<p><a class="reference internal" href="./asserts.html">Asserts</a>, <a class="reference internal" href="./assert.html">BOOST_MPL_ASSERT</a>, <a class="reference internal" href="./assert-not.html">BOOST_MPL_ASSERT_NOT</a>, <a class="reference internal" href="./assert-msg.html">BOOST_MPL_ASSERT_MSG</a></p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./assert-not.html" class="navigation-link">Prev</a> <a href="./introspection.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./assert-not.html" class="navigation-link">Back</a> Along</span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./asserts.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+26
-27
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: BOOST_MPL_ASSERT</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -14,9 +11,9 @@
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./asserts.html" class="navigation-link">Prev</a> <a href="./assert-msg.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group">Back <a href="./assert-msg.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./asserts.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./macros.html" class="navigation-link">Macros</a> / <a href="./asserts.html" class="navigation-link">Asserts</a> / <a href="./assert.html" class="navigation-link">BOOST_MPL_ASSERT</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="assert">
|
||||
<h1><a class="toc-backref" href="./asserts.html#id511" name="assert">BOOST_MPL_ASSERT</a></h1>
|
||||
<div class="section" id="assert-synopsis">
|
||||
<div class="section" id="boost-mpl-assert">
|
||||
<h1><a class="toc-backref" href="./asserts.html#id1588">BOOST_MPL_ASSERT</a></h1>
|
||||
<div class="section" id="id1287">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
#define <a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>( pred ) \
|
||||
@@ -24,55 +21,56 @@
|
||||
/**/
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="assert-description">
|
||||
<div class="section" id="id1288">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Generates a compilation error when the predicate <tt class="literal"><span class="pre">pred</span></tt> holds false.</p>
|
||||
</div>
|
||||
<div class="section" id="assert-header">
|
||||
<div class="section" id="id1289">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/assert.hpp" class="header">boost/mpl/assert.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="assert-parameters">
|
||||
<div class="section" id="id1290">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="19%" />
|
||||
<col width="43%" />
|
||||
<col width="38%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">pred</span></tt></td>
|
||||
<td>Boolean nullary <a class="reference" href="./metafunction.html">Metafunction</a></td>
|
||||
<td>Boolean nullary <a class="reference internal" href="./metafunction.html">Metafunction</a></td>
|
||||
<td>A predicate to be asserted.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="assert-expression-semantics">
|
||||
<div class="section" id="id1291">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For any boolean nullary <a class="reference" href="./metafunction.html">Metafunction</a> <tt class="literal"><span class="pre">pred</span></tt>:</p>
|
||||
<p>For any boolean nullary <a class="reference internal" href="./metafunction.html">Metafunction</a> <tt class="literal"><span class="pre">pred</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( pred ));
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body">None.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first">None.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Generates a compilation error if <tt class="literal"><span class="pre">pred::type::value</span> <span class="pre">!=</span> <span class="pre">true</span></tt>, otherwise
|
||||
has no effect. Note that double parentheses are required even if no commas
|
||||
has no effect. Note that double parentheses are required even if no commas
|
||||
appear in the condition.</p>
|
||||
<p>When possible within the compiler's diagnostic capabilities,
|
||||
the error message will include the predicate's full type name, and have a
|
||||
the error message will include the predicate's full type name, and have a
|
||||
general form of:</p>
|
||||
<pre class="last literal-block">
|
||||
<em>...</em> ************ pred::************ <em>...</em>
|
||||
@@ -82,7 +80,7 @@ general form of:</p>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="assert-example">
|
||||
<div class="section" id="id1292">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
template< typename T, typename U > struct my
|
||||
@@ -96,19 +94,20 @@ my<void*,char*> test;
|
||||
// In instantiation of `my<void, char*>':
|
||||
// instantiated from here
|
||||
// conversion from `
|
||||
// mpl_::failed************boost::is_same<void, char*>::************' to
|
||||
// mpl_::failed************boost::is_same<void, char*>::************' to
|
||||
// non-scalar type `mpl_::assert<false>' requested
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="assert-see-also">
|
||||
<div class="section" id="id1293">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./asserts.html">Asserts</a>, <a class="refentry reference" href="./assert-not.html"><tt class="refentry literal"><span class="pre">BOOST_MPL_ASSERT_NOT</span></tt></a>, <a class="refentry reference" href="./assert-msg.html"><tt class="refentry literal"><span class="pre">BOOST_MPL_ASSERT_MSG</span></tt></a>, <a class="refentry reference" href="./assert-relation.html"><tt class="refentry literal"><span class="pre">BOOST_MPL_ASSERT_RELATION</span></tt></a></p>
|
||||
<!-- modtime: November 10, 2004 04:45:28 +0000 -->
|
||||
<p><a class="reference internal" href="./asserts.html">Asserts</a>, <a class="reference internal" href="./assert-not.html">BOOST_MPL_ASSERT_NOT</a>, <a class="reference internal" href="./assert-msg.html">BOOST_MPL_ASSERT_MSG</a>, <a class="reference internal" href="./assert-relation.html">BOOST_MPL_ASSERT_RELATION</a></p>
|
||||
<!-- Macros/Asserts//BOOST_MPL_ASSERT_MSG -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./asserts.html" class="navigation-link">Prev</a> <a href="./assert-msg.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group">Back <a href="./assert-msg.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./asserts.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+10
-12
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: Asserts</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,22 +12,23 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./macros.html" class="navigation-link">Macros</a> / <a href="./asserts.html" class="navigation-link">Asserts</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="asserts">
|
||||
<h1><a class="toc-backref" href="./macros.html#id510" name="asserts">Asserts</a></h1>
|
||||
<a class="target" id="label-macros-asserts" name="label-macros-asserts"></a><p>The MPL supplies a suite of static assertion macros that are specifically
|
||||
<h1><a class="toc-backref" href="./macros.html#id1587">Asserts</a></h1>
|
||||
<p id="label-macros-asserts">The MPL supplies a suite of static assertion macros that are specifically
|
||||
designed to generate maximally useful and informative error messages
|
||||
within the diagnostic capabilities of each compiler.</p>
|
||||
<p>All assert macros can be used at class, function, or namespace scope.</p>
|
||||
<!-- modtime: November 05, 2004 07:25:45 +0000 -->
|
||||
<!-- Macros/Asserts//BOOST_MPL_ASSERT -->
|
||||
<ul class="toc simple" id="outline">
|
||||
<li><a class="reference" href="./assert.html" id="id511" name="id511">BOOST_MPL_ASSERT</a></li>
|
||||
<li><a class="reference" href="./assert-msg.html" id="id512" name="id512">BOOST_MPL_ASSERT_MSG</a></li>
|
||||
<li><a class="reference" href="./assert-not.html" id="id513" name="id513">BOOST_MPL_ASSERT_NOT</a></li>
|
||||
<li><a class="reference" href="./assert-relation.html" id="id514" name="id514">BOOST_MPL_ASSERT_RELATION</a></li>
|
||||
<li><a class="reference internal" href="./assert.html" id="id1588">BOOST_MPL_ASSERT</a></li>
|
||||
<li><a class="reference internal" href="./assert-msg.html" id="id1589">BOOST_MPL_ASSERT_MSG</a></li>
|
||||
<li><a class="reference internal" href="./assert-not.html" id="id1590">BOOST_MPL_ASSERT_NOT</a></li>
|
||||
<li><a class="reference internal" href="./assert-relation.html" id="id1591">BOOST_MPL_ASSERT_RELATION</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./macros.html" class="navigation-link">Prev</a> <a href="./assert.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group">Back <a href="./introspection.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./macros.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
@@ -1,68 +1,65 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: Associative Sequence</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
<body class="docframe refmanual">
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./back-extensible-sequence.html" class="navigation-link">Prev</a> <a href="./extensible-associative.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./back-extensible-sequence.html" class="navigation-link">Back</a> <a href="./extensible-associative.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./concepts.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./back-extensible-sequence.html" class="navigation-link">Prev</a> <a href="./extensible-associative-sequence.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./back-extensible-sequence.html" class="navigation-link">Back</a> <a href="./extensible-associative-sequence.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./concepts.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./sequences.html" class="navigation-link">Sequences</a> / <a href="./concepts.html" class="navigation-link">Concepts</a> / <a href="./associative-sequence.html" class="navigation-link">Associative Sequence</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="associative-sequence">
|
||||
<h1><a class="toc-backref" href="./concepts.html#id330" name="associative-sequence">Associative Sequence</a></h1>
|
||||
<div class="section" id="associative-description">
|
||||
<h1><a class="toc-backref" href="./concepts.html#id1401">Associative Sequence</a></h1>
|
||||
<div class="section" id="id29">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>An <a class="reference" href="./associative-sequence.html">Associative Sequence</a> is a <a class="reference" href="./forward-sequence.html">Forward Sequence</a> that allows efficient retrieval of
|
||||
elements based on keys. Unlike associative containers in the C++ Standard Library,
|
||||
MPL associative sequences have no associated ordering relation. Instead,
|
||||
<em>type identity</em> is used to impose an equivalence relation on keys, and the
|
||||
order in which sequence elements are traversed during iteration is left
|
||||
<p>An <a class="reference internal" href="./associative-sequence.html">Associative Sequence</a> is a <a class="reference internal" href="./forward-sequence.html">Forward Sequence</a> that allows efficient retrieval of
|
||||
elements based on keys. Unlike associative containers in the C++ Standard Library,
|
||||
MPL associative sequences have no associated ordering relation. Instead,
|
||||
<em>type identity</em> is used to impose an equivalence relation on keys, and the
|
||||
order in which sequence elements are traversed during iteration is left
|
||||
unspecified.</p>
|
||||
</div>
|
||||
<div class="section" id="associative-definitions">
|
||||
<div class="section" id="id30">
|
||||
<h3><a class="subsection-title" href="#definitions" name="definitions">Definitions</a></h3>
|
||||
<a class="target" id="key-part" name="key-part"></a><a class="target" id="value-part" name="value-part"></a><ul class="simple">
|
||||
<li>A <em>key</em> is a part of the element type used to identify and retrieve
|
||||
<ul class="simple" id="value-part">
|
||||
<span id="key-part"></span><li>A <em>key</em> is a part of the element type used to identify and retrieve
|
||||
the element within the sequence.</li>
|
||||
<li>A <em>value</em> is a part of the element type retrievied from the sequence
|
||||
<li>A <em>value</em> is a part of the element type retrievied from the sequence
|
||||
by its key.</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="section" id="associative-expression-requirements">
|
||||
<div class="section" id="id31">
|
||||
<h3><a class="subsection-title" href="#expression-requirements" name="expression-requirements">Expression requirements</a></h3>
|
||||
<p>In the following table and subsequent specifications, <tt class="literal"><span class="pre">s</span></tt> is an <a class="reference" href="./associative-sequence.html">Associative Sequence</a>,
|
||||
<p>In the following table and subsequent specifications, <tt class="literal"><span class="pre">s</span></tt> is an <a class="reference internal" href="./associative-sequence.html">Associative Sequence</a>,
|
||||
<tt class="literal"><span class="pre">x</span></tt> is a sequence element, and <tt class="literal"><span class="pre">k</span></tt> and <tt class="literal"><span class="pre">def</span></tt> are arbitrary types.</p>
|
||||
<p>In addition to the requirements defined in <a class="reference" href="./forward-sequence.html">Forward Sequence</a>,
|
||||
<p>In addition to the requirements defined in <a class="reference internal" href="./forward-sequence.html">Forward Sequence</a>,
|
||||
the following must be met:</p>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="33%" />
|
||||
<col width="38%" />
|
||||
<col width="29%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Expression</th>
|
||||
<th>Type</th>
|
||||
<th>Complexity</th>
|
||||
<tr><th class="head">Expression</th>
|
||||
<th class="head">Type</th>
|
||||
<th class="head">Complexity</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./has-key.html" class="identifier">has_key</a><s,k>::type</span></tt></td>
|
||||
<td>Boolean <a class="reference" href="./integral-constant.html">Integral Constant</a></td>
|
||||
<td>Boolean <a class="reference internal" href="./integral-constant.html">Integral Constant</a></td>
|
||||
<td>Amortized constant time</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./count.html" class="identifier">count</a><s,k>::type</span></tt></td>
|
||||
<td><a class="reference" href="./integral-constant.html">Integral Constant</a></td>
|
||||
<td><a class="reference internal" href="./integral-constant.html">Integral Constant</a></td>
|
||||
<td>Amortized constant time</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./order.html" class="identifier">order</a><s,k>::type</span></tt></td>
|
||||
<td><a class="reference" href="./integral-constant.html">Integral Constant</a> or <tt class="literal"><span class="pre"><a href="./void.html" class="identifier">void_</a></span></tt></td>
|
||||
<td><a class="reference internal" href="./integral-constant.html">Integral Constant</a> or <tt class="literal"><span class="pre"><a href="./void.html" class="identifier">void_</a></span></tt></td>
|
||||
<td>Amortized constant time</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./at.html" class="identifier">at</a><s,k>::type</span></tt></td>
|
||||
@@ -84,33 +81,33 @@ the following must be met:</p>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="associative-expression-semantics">
|
||||
<div class="section" id="id32">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>The semantics of an expression are defined only
|
||||
where they differ from, or are not defined in <a class="reference" href="./forward-sequence.html">Forward Sequence</a>.</p>
|
||||
<table border="1" class="table">
|
||||
where they differ from, or are not defined in <a class="reference internal" href="./forward-sequence.html">Forward Sequence</a>.</p>
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="33%" />
|
||||
<col width="67%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Expression</th>
|
||||
<th>Semantics</th>
|
||||
<tr><th class="head">Expression</th>
|
||||
<th class="head">Semantics</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./has-key.html" class="identifier">has_key</a><s,k>::type</span></tt></td>
|
||||
<td>A boolean <a class="reference" href="./integral-constant.html">Integral Constant</a> <tt class="literal"><span class="pre">c</span></tt> such that
|
||||
<td>A boolean <a class="reference internal" href="./integral-constant.html">Integral Constant</a> <tt class="literal"><span class="pre">c</span></tt> such that
|
||||
<tt class="literal"><span class="pre">c::value</span> <span class="pre">==</span> <span class="pre">true</span></tt> if and only if there is one or more
|
||||
elements with the key <tt class="literal"><span class="pre">k</span></tt> in <tt class="literal"><span class="pre">s</span></tt>; see <a class="refentry reference" href="./has-key.html"><tt class="refentry literal"><span class="pre">has_key</span></tt></a>.</td>
|
||||
elements with the key <tt class="literal"><span class="pre">k</span></tt> in <tt class="literal"><span class="pre">s</span></tt>; see <a class="reference internal" href="./has-key.html">has_key</a>.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./count.html" class="identifier">count</a><s,k>::type</span></tt></td>
|
||||
<td>The number of elements with the key <tt class="literal"><span class="pre">k</span></tt> in <tt class="literal"><span class="pre">s</span></tt>;
|
||||
see <a class="refentry reference" href="./count.html"><tt class="refentry literal"><span class="pre">count</span></tt></a>.</td>
|
||||
see <a class="reference internal" href="./count.html">count</a>.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./order.html" class="identifier">order</a><s,k>::type</span></tt></td>
|
||||
<td>A unique unsigned <a class="reference" href="./integral-constant.html">Integral Constant</a> associated
|
||||
with the key <tt class="literal"><span class="pre">k</span></tt> in the sequence <tt class="literal"><span class="pre">s</span></tt>; see <a class="refentry reference" href="./order.html"><tt class="refentry literal"><span class="pre">order</span></tt></a>.</td>
|
||||
<td>A unique unsigned <a class="reference internal" href="./integral-constant.html">Integral Constant</a> associated
|
||||
with the key <tt class="literal"><span class="pre">k</span></tt> in the sequence <tt class="literal"><span class="pre">s</span></tt>; see <a class="reference internal" href="./order.html">order</a>.</td>
|
||||
</tr>
|
||||
<tr><td><pre class="first last literal-block">
|
||||
<a href="./at.html" class="identifier">at</a><s,k>::type
|
||||
@@ -118,42 +115,43 @@ with the key <tt class="literal"><span class="pre">k</span></tt> in the sequence
|
||||
</pre>
|
||||
</td>
|
||||
<td>The first element associated with the key <tt class="literal"><span class="pre">k</span></tt>
|
||||
in the sequence <tt class="literal"><span class="pre">s</span></tt>; see <a class="refentry reference" href="./at.html"><tt class="refentry literal"><span class="pre">at</span></tt></a>.</td>
|
||||
in the sequence <tt class="literal"><span class="pre">s</span></tt>; see <a class="reference internal" href="./at.html">at</a>.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./key-type.html" class="identifier">key_type</a><s,x>::type</span></tt></td>
|
||||
<td>The key part of the element <tt class="literal"><span class="pre">x</span></tt> that would be
|
||||
used to identify <tt class="literal"><span class="pre">x</span></tt> in <tt class="literal"><span class="pre">s</span></tt>; see <a class="refentry reference" href="./key-type.html"><tt class="refentry literal"><span class="pre">key_type</span></tt></a>.</td>
|
||||
used to identify <tt class="literal"><span class="pre">x</span></tt> in <tt class="literal"><span class="pre">s</span></tt>; see <a class="reference internal" href="./key-type.html">key_type</a>.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./value-type.html" class="identifier">value_type</a><s,x>::type</span></tt></td>
|
||||
<td>The value part of the element <tt class="literal"><span class="pre">x</span></tt> that would be
|
||||
used for <tt class="literal"><span class="pre">x</span></tt> in <tt class="literal"><span class="pre">s</span></tt>; see <a class="refentry reference" href="./value-type.html"><tt class="refentry literal"><span class="pre">value_type</span></tt></a>.</td>
|
||||
used for <tt class="literal"><span class="pre">x</span></tt> in <tt class="literal"><span class="pre">s</span></tt>; see <a class="reference internal" href="./value-type.html">value_type</a>.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<!-- Invariants
|
||||
- - - - - - - - - -
|
||||
|
||||
For any associative sequence ``s`` the following invariants always hold:
|
||||
For any associative sequence ``s`` the following invariants always hold:
|
||||
|
||||
* ??? -->
|
||||
</div>
|
||||
<div class="section" id="associative-models">
|
||||
<div class="section" id="id33">
|
||||
<h3><a class="subsection-title" href="#models" name="models">Models</a></h3>
|
||||
<ul class="simple">
|
||||
<li><a class="refentry reference" href="./set.html"><tt class="refentry literal"><span class="pre">set</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./map.html"><tt class="refentry literal"><span class="pre">map</span></tt></a></li>
|
||||
<li><a class="reference internal" href="./set.html">set</a></li>
|
||||
<li><a class="reference internal" href="./map.html">map</a></li>
|
||||
</ul>
|
||||
<!-- * |multiset| -->
|
||||
</div>
|
||||
<div class="section" id="associative-see-also">
|
||||
<div class="section" id="id34">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./sequences.html">Sequences</a>, <a class="reference" href="./extensible-associative.html">Extensible Associative Sequence</a>, <a class="refentry reference" href="./has-key.html"><tt class="refentry literal"><span class="pre">has_key</span></tt></a>, <a class="refentry reference" href="./count.html"><tt class="refentry literal"><span class="pre">count</span></tt></a>, <a class="refentry reference" href="./order.html"><tt class="refentry literal"><span class="pre">order</span></tt></a>, <a class="refentry reference" href="./at.html"><tt class="refentry literal"><span class="pre">at</span></tt></a>, <a class="refentry reference" href="./key-type.html"><tt class="refentry literal"><span class="pre">key_type</span></tt></a>, <a class="refentry reference" href="./value-type.html"><tt class="refentry literal"><span class="pre">value_type</span></tt></a></p>
|
||||
<!-- modtime: November 13, 2004 00:51:14 +0000 -->
|
||||
<p><a class="reference internal" href="./sequences.html">Sequences</a>, <a class="reference internal" href="./extensible-associative-sequence.html">Extensible Associative Sequence</a>, <a class="reference internal" href="./has-key.html">has_key</a>, <a class="reference internal" href="./count.html">count</a>, <a class="reference internal" href="./order.html">order</a>, <a class="reference internal" href="./at.html">at</a>, <a class="reference internal" href="./key-type.html">key_type</a>, <a class="reference internal" href="./value-type.html">value_type</a></p>
|
||||
<!-- Sequences/Concepts//Extensible Associative Sequence |80 -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./back-extensible-sequence.html" class="navigation-link">Prev</a> <a href="./extensible-associative.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./back-extensible-sequence.html" class="navigation-link">Back</a> <a href="./extensible-associative.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./concepts.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./back-extensible-sequence.html" class="navigation-link">Prev</a> <a href="./extensible-associative-sequence.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./back-extensible-sequence.html" class="navigation-link">Back</a> <a href="./extensible-associative-sequence.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./concepts.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+35
-35
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: at_c</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,8 +12,8 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./sequences.html" class="navigation-link">Sequences</a> / <a href="./intrinsic-metafunctions.html" class="navigation-link">Intrinsic Metafunctions</a> / <a href="./at-c.html" class="navigation-link">at_c</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="at-c">
|
||||
<h1><a class="toc-backref" href="./intrinsic-metafunctions.html#id354" name="at-c">at_c</a></h1>
|
||||
<div class="section" id="intrinsic-at-synopsis">
|
||||
<h1><a class="toc-backref" href="./intrinsic-metafunctions.html#id1426">at_c</a></h1>
|
||||
<div class="section" id="id185">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
@@ -29,35 +26,35 @@ struct <a href="./at-c.html" class="identifier">at_c</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="intrinsic-at-description">
|
||||
<div class="section" id="id186">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Returns a type identical to the <tt class="literal"><span class="pre">n</span></tt>th element from the beginning of
|
||||
the sequence. <tt class="literal"><span class="pre"><a href="./at-c.html" class="identifier">at_c</a><Sequence,n>::type</span></tt> is a shorcut notation for
|
||||
<p>Returns a type identical to the <tt class="literal"><span class="pre">n</span></tt>th element from the beginning of
|
||||
the sequence. <tt class="literal"><span class="pre"><a href="./at-c.html" class="identifier">at_c</a><Sequence,n>::type</span></tt> is a shorcut notation for
|
||||
<tt class="literal"><span class="pre"><a href="./at.html" class="identifier">at</a><</span> <span class="pre">Sequence,</span> <span class="pre"><a href="./long.html" class="identifier">long_</a><n></span> <span class="pre">>::type</span></tt>.</p>
|
||||
</div>
|
||||
<div class="section" id="intrinsic-at-header">
|
||||
<div class="section" id="id187">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/at.hpp" class="header">boost/mpl/at.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="intrinsic-at-parameters">
|
||||
<div class="section" id="id188">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="15%" />
|
||||
<col width="36%" />
|
||||
<col width="48%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">Sequence</span></tt></td>
|
||||
<td><a class="reference" href="./forward-sequence.html">Forward Sequence</a></td>
|
||||
<td><a class="reference internal" href="./forward-sequence.html">Forward Sequence</a></td>
|
||||
<td>A sequence to be examined.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre">n</span></tt></td>
|
||||
@@ -68,18 +65,20 @@ specifying the element to be retrieved.</td>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="intrinsic-at-expression-semantics">
|
||||
<div class="section" id="id189">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./at-c.html" class="identifier">at_c</a><Sequence,n>::type t;
|
||||
typedef <a href="./at-c.html" class="identifier">at_c</a><Sequence,n>::type t;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body">A type</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first">A type</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body"><tt class="literal"><span class="pre">0</span> <span class="pre"><=</span> <span class="pre">n</span> <span class="pre"><</span> <span class="pre"><a href="./size.html" class="identifier">size</a><Sequence>::value</span></tt></td>
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body"><p class="first"><tt class="literal"><span class="pre">0</span> <span class="pre"><=</span> <span class="pre">n</span> <span class="pre"><</span> <span class="pre"><a href="./size.html" class="identifier">size</a><Sequence>::value</span></tt></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Equivalent to</p>
|
||||
<pre class="last literal-block">
|
||||
@@ -90,46 +89,47 @@ typedef <a href="./at.html" class="identifier">at</a>< Sequence, <a href="./l
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="at-complexity">
|
||||
<div class="section" id="id190">
|
||||
<h3><a class="subsection-title" href="#complexity" name="complexity">Complexity</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="47%" />
|
||||
<col width="53%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Sequence archetype</th>
|
||||
<th>Complexity</th>
|
||||
<tr><th class="head">Sequence archetype</th>
|
||||
<th class="head">Complexity</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><a class="reference" href="./forward-sequence.html">Forward Sequence</a></td>
|
||||
<tr><td><a class="reference internal" href="./forward-sequence.html">Forward Sequence</a></td>
|
||||
<td>Linear.</td>
|
||||
</tr>
|
||||
<tr><td><a class="reference" href="./random-access-sequence.html">Random Access Sequence</a></td>
|
||||
<tr><td><a class="reference internal" href="./random-access-sequence.html">Random Access Sequence</a></td>
|
||||
<td>Amortized constant time.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="intrinsic-at-example">
|
||||
<div class="section" id="id191">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./range-c.html" class="identifier">range_c</a><long,10,50> range;
|
||||
<a href="./assert-relation.html" class="identifier">BOOST_MPL_ASSERT_RELATION</a>( (<a href="./at-c.html" class="identifier">at_c</a>< range,0 >::value), ==, 10 );
|
||||
<a href="./assert-relation.html" class="identifier">BOOST_MPL_ASSERT_RELATION</a>( (<a href="./at-c.html" class="identifier">at_c</a>< range,10 >::value), ==, 20 );
|
||||
<a href="./assert-relation.html" class="identifier">BOOST_MPL_ASSERT_RELATION</a>( (<a href="./at-c.html" class="identifier">at_c</a>< range,40 >::value), ==, 50 );
|
||||
<a href="./assert-relation.html" class="identifier">BOOST_MPL_ASSERT_RELATION</a>( (<a href="./at-c.html" class="identifier">at_c</a>< range,0 >::type::value), ==, 10 );
|
||||
<a href="./assert-relation.html" class="identifier">BOOST_MPL_ASSERT_RELATION</a>( (<a href="./at-c.html" class="identifier">at_c</a>< range,10 >::type::value), ==, 20 );
|
||||
<a href="./assert-relation.html" class="identifier">BOOST_MPL_ASSERT_RELATION</a>( (<a href="./at-c.html" class="identifier">at_c</a>< range,40 >::type::value), ==, 50 );
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="intrinsic-at-see-also">
|
||||
<div class="section" id="id192">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./forward-sequence.html">Forward Sequence</a>, <a class="reference" href="./random-access-sequence.html">Random Access Sequence</a>, <a class="refentry reference" href="./at.html"><tt class="refentry literal"><span class="pre">at</span></tt></a>, <a class="refentry reference" href="./front.html"><tt class="refentry literal"><span class="pre">front</span></tt></a>, <a class="refentry reference" href="./back.html"><tt class="refentry literal"><span class="pre">back</span></tt></a></p>
|
||||
<!-- modtime: November 13, 2004 01:23:57 +0000 -->
|
||||
<p><a class="reference internal" href="./forward-sequence.html">Forward Sequence</a>, <a class="reference internal" href="./random-access-sequence.html">Random Access Sequence</a>, <a class="reference internal" href="./at.html">at</a>, <a class="reference internal" href="./front.html">front</a>, <a class="reference internal" href="./back.html">back</a></p>
|
||||
<!-- Sequences/Intrinsic Metafunctions//back -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./at.html" class="navigation-link">Prev</a> <a href="./back.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./at.html" class="navigation-link">Back</a> <a href="./back.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./intrinsic-metafunctions.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+48
-47
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: at</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,8 +12,8 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./sequences.html" class="navigation-link">Sequences</a> / <a href="./intrinsic-metafunctions.html" class="navigation-link">Intrinsic Metafunctions</a> / <a href="./at.html" class="navigation-link">at</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="at">
|
||||
<h1><a class="toc-backref" href="./intrinsic-metafunctions.html#id353" name="at">at</a></h1>
|
||||
<div class="section" id="at-synopsis">
|
||||
<h1><a class="toc-backref" href="./intrinsic-metafunctions.html#id1425">at</a></h1>
|
||||
<div class="section" id="id177">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
@@ -39,52 +36,52 @@ struct <a href="./at.html" class="identifier">at</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="at-description">
|
||||
<div class="section" id="id178">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p><tt class="literal"><span class="pre"><a href="./at.html" class="identifier">at</a></span></tt> is an <a class="reference" href="./terminology.html#overloaded-name">overloaded name</a>:</p>
|
||||
<p><tt class="literal"><span class="pre"><a href="./at.html" class="identifier">at</a></span></tt> is an <a class="reference internal" href="./terminology.html#overloaded-name">overloaded name</a>:</p>
|
||||
<ul class="simple">
|
||||
<li><tt class="literal"><span class="pre"><a href="./at.html" class="identifier">at</a><Sequence,N></span></tt> returns the <tt class="literal"><span class="pre">N</span></tt>-th element from the beginning of the
|
||||
<a class="reference" href="./forward-sequence.html">Forward Sequence</a> <tt class="literal"><span class="pre">Sequence</span></tt>.</li>
|
||||
<li><tt class="literal"><span class="pre"><a href="./at.html" class="identifier">at</a><AssocSeq,Key,Default></span></tt> returns the first element associated with <tt class="literal"><span class="pre">Key</span></tt>
|
||||
in the <a class="reference" href="./associative-sequence.html">Associative Sequence</a> <tt class="literal"><span class="pre">AssocSeq</span></tt>, or <tt class="literal"><span class="pre">Default</span></tt> if no such element
|
||||
<li><tt class="literal"><span class="pre"><a href="./at.html" class="identifier">at</a><Sequence,N></span></tt> returns the <tt class="literal"><span class="pre">N</span></tt>-th element from the beginning of the
|
||||
<a class="reference internal" href="./forward-sequence.html">Forward Sequence</a> <tt class="literal"><span class="pre">Sequence</span></tt>.</li>
|
||||
<li><tt class="literal"><span class="pre"><a href="./at.html" class="identifier">at</a><AssocSeq,Key,Default></span></tt> returns the first element associated with <tt class="literal"><span class="pre">Key</span></tt>
|
||||
in the <a class="reference internal" href="./associative-sequence.html">Associative Sequence</a> <tt class="literal"><span class="pre">AssocSeq</span></tt>, or <tt class="literal"><span class="pre">Default</span></tt> if no such element
|
||||
exists.</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="section" id="at-header">
|
||||
<div class="section" id="id179">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/at.hpp" class="header">boost/mpl/at.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="at-model-of">
|
||||
<div class="section" id="id180">
|
||||
<h3><a class="subsection-title" href="#model-of" name="model-of">Model of</a></h3>
|
||||
<p><a class="reference" href="./tag-dispatched.html">Tag Dispatched Metafunction</a></p>
|
||||
<p><a class="reference internal" href="./tag-dispatched-metafunction.html">Tag Dispatched Metafunction</a></p>
|
||||
</div>
|
||||
<div class="section" id="at-parameters">
|
||||
<div class="section" id="id181">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="17%" />
|
||||
<col width="30%" />
|
||||
<col width="53%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">Sequence</span></tt></td>
|
||||
<td><a class="reference" href="./forward-sequence.html">Forward Sequence</a></td>
|
||||
<td><a class="reference internal" href="./forward-sequence.html">Forward Sequence</a></td>
|
||||
<td>A sequence to be examined.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre">AssocSeq</span></tt></td>
|
||||
<td><a class="reference" href="./associative-sequence.html">Associative Sequence</a></td>
|
||||
<td><a class="reference internal" href="./associative-sequence.html">Associative Sequence</a></td>
|
||||
<td>A sequence to be examined.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre">N</span></tt></td>
|
||||
<td><a class="reference" href="./integral-constant.html">Integral Constant</a></td>
|
||||
<td><a class="reference internal" href="./integral-constant.html">Integral Constant</a></td>
|
||||
<td>An offset from the beginning of the sequence
|
||||
specifying the element to be retrieved.</td>
|
||||
</tr>
|
||||
@@ -100,20 +97,22 @@ not found.</td>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="at-expression-semantics">
|
||||
<div class="section" id="id182">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<div class="expression-semantics compound">
|
||||
<p class="compound-first">For any <a class="reference" href="./forward-sequence.html">Forward Sequence</a> <tt class="literal"><span class="pre">s</span></tt>, and <a class="reference" href="./integral-constant.html">Integral Constant</a> <tt class="literal"><span class="pre">n</span></tt>:</p>
|
||||
<p class="compound-first">For any <a class="reference internal" href="./forward-sequence.html">Forward Sequence</a> <tt class="literal"><span class="pre">s</span></tt>, and <a class="reference internal" href="./integral-constant.html">Integral Constant</a> <tt class="literal"><span class="pre">n</span></tt>:</p>
|
||||
<pre class="compound-middle literal-block">
|
||||
typedef <a href="./at.html" class="identifier">at</a><s,n>::type t;
|
||||
typedef <a href="./at.html" class="identifier">at</a><s,n>::type t;
|
||||
</pre>
|
||||
<table class="compound-last field-list" frame="void" rules="none">
|
||||
<table class="compound-last docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body">A type.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first">A type.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body"><tt class="literal"><span class="pre">0</span> <span class="pre"><=</span> <span class="pre">n::value</span> <span class="pre"><</span> <span class="pre"><a href="./size.html" class="identifier">size</a><s>::value</span></tt>.</td>
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body"><p class="first"><tt class="literal"><span class="pre">0</span> <span class="pre"><=</span> <span class="pre">n::value</span> <span class="pre"><</span> <span class="pre"><a href="./size.html" class="identifier">size</a><s>::value</span></tt>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Equivalent to</p>
|
||||
<pre class="last literal-block">
|
||||
@@ -125,11 +124,11 @@ typedef <a href="./deref.html" class="identifier">deref</a>< <a href="./advan
|
||||
</table>
|
||||
</div>
|
||||
<div class="expression-semantics compound">
|
||||
<p class="compound-first">For any <a class="reference" href="./associative-sequence.html">Associative Sequence</a> <tt class="literal"><span class="pre">s</span></tt>, and arbitrary types <tt class="literal"><span class="pre">key</span></tt> and <tt class="literal"><span class="pre">x</span></tt>:</p>
|
||||
<p class="compound-first">For any <a class="reference internal" href="./associative-sequence.html">Associative Sequence</a> <tt class="literal"><span class="pre">s</span></tt>, and arbitrary types <tt class="literal"><span class="pre">key</span></tt> and <tt class="literal"><span class="pre">x</span></tt>:</p>
|
||||
<pre class="compound-middle literal-block">
|
||||
typedef <a href="./at.html" class="identifier">at</a><s,key,x>::type t;
|
||||
typedef <a href="./at.html" class="identifier">at</a><s,key,x>::type t;
|
||||
</pre>
|
||||
<table class="compound-middle field-list" frame="void" rules="none">
|
||||
<table class="compound-middle docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
@@ -142,13 +141,14 @@ otherwise <tt class="literal"><span class="pre">t</span></tt> is identical to <t
|
||||
</table>
|
||||
<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
|
||||
<pre class="compound-middle literal-block">
|
||||
typedef <a href="./at.html" class="identifier">at</a><s,key>::type t;
|
||||
typedef <a href="./at.html" class="identifier">at</a><s,key>::type t;
|
||||
</pre>
|
||||
<table class="compound-last field-list" frame="void" rules="none">
|
||||
<table class="compound-last docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body">A type.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first">A type.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Equivalent to</p>
|
||||
<pre class="last literal-block">
|
||||
@@ -161,31 +161,31 @@ typedef <a href="./at.html" class="identifier">at</a><s,key,<a href="./void.h
|
||||
</div>
|
||||
</div>
|
||||
<div class="section" id="complexity">
|
||||
<h3><a class="subsection-title" href="#complexity" name="complexity">Complexity</a></h3>
|
||||
<table border="1" class="table">
|
||||
<h3>Complexity</h3>
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="47%" />
|
||||
<col width="53%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Sequence archetype</th>
|
||||
<th>Complexity</th>
|
||||
<tr><th class="head">Sequence archetype</th>
|
||||
<th class="head">Complexity</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><a class="reference" href="./forward-sequence.html">Forward Sequence</a></td>
|
||||
<tr><td><a class="reference internal" href="./forward-sequence.html">Forward Sequence</a></td>
|
||||
<td>Linear.</td>
|
||||
</tr>
|
||||
<tr><td><a class="reference" href="./random-access-sequence.html">Random Access Sequence</a></td>
|
||||
<tr><td><a class="reference internal" href="./random-access-sequence.html">Random Access Sequence</a></td>
|
||||
<td>Amortized constant time.</td>
|
||||
</tr>
|
||||
<tr><td><a class="reference" href="./associative-sequence.html">Associative Sequence</a></td>
|
||||
<tr><td><a class="reference internal" href="./associative-sequence.html">Associative Sequence</a></td>
|
||||
<td>Amortized constant time.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="at-example">
|
||||
<div class="section" id="id183">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./range-c.html" class="identifier">range_c</a><long,10,50> range;
|
||||
@@ -200,15 +200,16 @@ typedef <a href="./set.html" class="identifier">set</a>< int const,long*,doub
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( is_same< <a href="./at.html" class="identifier">at</a><s,int>::type, int > ));
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="at-see-also">
|
||||
<div class="section" id="id184">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./forward-sequence.html">Forward Sequence</a>, <a class="reference" href="./random-access-sequence.html">Random Access Sequence</a>, <a class="reference" href="./associative-sequence.html">Associative Sequence</a>, <a class="refentry reference" href="./at-c.html"><tt class="refentry literal"><span class="pre">at_c</span></tt></a>, <a class="refentry reference" href="./front.html"><tt class="refentry literal"><span class="pre">front</span></tt></a>, <a class="refentry reference" href="./back.html"><tt class="refentry literal"><span class="pre">back</span></tt></a></p>
|
||||
<!-- modtime: November 13, 2004 01:23:02 +0000 -->
|
||||
<p><a class="reference internal" href="./forward-sequence.html">Forward Sequence</a>, <a class="reference internal" href="./random-access-sequence.html">Random Access Sequence</a>, <a class="reference internal" href="./associative-sequence.html">Associative Sequence</a>, <a class="reference internal" href="./at-c.html">at_c</a>, <a class="reference internal" href="./front.html">front</a>, <a class="reference internal" href="./back.html">back</a></p>
|
||||
<!-- Sequences/Intrinsic Metafunctions//at_c -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./intrinsic-metafunctions.html" class="navigation-link">Prev</a> <a href="./at-c.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group">Back <a href="./at-c.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./intrinsic-metafunctions.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
@@ -1,22 +1,19 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: BOOST_MPL_AUX_LAMBDA_SUPPORT</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
<body class="docframe refmanual">
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./broken-compiler.html" class="navigation-link">Prev</a> <a href="./terminology.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group">Back Along</span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./broken-compiler.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./macros.html" class="navigation-link">Macros</a> / <a href="./broken-compiler.html" class="navigation-link">Broken Compiler Workarounds</a> / <a href="./aux-lambda-support.html" class="navigation-link">BOOST_MPL_AUX_LAMBDA_SUPPORT</a></td>
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./broken-compiler-workarounds.html" class="navigation-link">Prev</a> <a href="./terminology.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group">Back Along</span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./broken-compiler-workarounds.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./macros.html" class="navigation-link">Macros</a> / <a href="./broken-compiler-workarounds.html" class="navigation-link">Broken Compiler Workarounds</a> / <a href="./aux-lambda-support.html" class="navigation-link">BOOST_MPL_AUX_LAMBDA_SUPPORT</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="aux-lambda-support">
|
||||
<h1><a class="toc-backref" href="./broken-compiler.html#id528" name="aux-lambda-support">BOOST_MPL_AUX_LAMBDA_SUPPORT</a></h1>
|
||||
<div class="section" id="aux-synopsis">
|
||||
<div class="section" id="boost-mpl-aux-lambda-support">
|
||||
<h1><a class="toc-backref" href="./broken-compiler-workarounds.html#id1609">BOOST_MPL_AUX_LAMBDA_SUPPORT</a></h1>
|
||||
<div class="section" id="id1384">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
#define <a href="./aux-lambda-support.html" class="identifier">BOOST_MPL_AUX_LAMBDA_SUPPORT</a>(arity, fun, params) \
|
||||
@@ -24,30 +21,30 @@
|
||||
/**/
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="aux-description">
|
||||
<div class="section" id="id1385">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Enables metafunction <tt class="literal"><span class="pre">fun</span></tt> for the use in <a class="reference" href="./lambda-expression.html">Lambda Expression</a>s on
|
||||
compilers that don't support partial template specialization or/and
|
||||
<p>Enables metafunction <tt class="literal"><span class="pre">fun</span></tt> for the use in <a class="reference internal" href="./lambda-expression.html">Lambda Expression</a>s on
|
||||
compilers that don't support partial template specialization or/and
|
||||
template template parameters. Expands to nothing on conforming compilers.</p>
|
||||
</div>
|
||||
<div class="section" id="aux-header">
|
||||
<div class="section" id="id1386">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/aux_/lambda_support.hpp" class="header">boost/mpl/aux_/lambda_support.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="aux-parameters">
|
||||
<div class="section" id="id1387">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="15%" />
|
||||
<col width="32%" />
|
||||
<col width="53%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
@@ -61,16 +58,16 @@ template parameters, including the defaults.</td>
|
||||
<td>The metafunction's name.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre">params</span></tt></td>
|
||||
<td>A <a class="reference" href="http://www.boost.org/libs/preprocessor/doc/data/tuples.html" target="_top">PP-tuple</a></td>
|
||||
<td>A <a class="reference external" href="http://www.boost.org/libs/preprocessor/doc/data/tuples.html" target="_top">PP-tuple</a></td>
|
||||
<td>A tuple of the metafunction's parameter names, in
|
||||
their original order, including the defaults.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="aux-expression-semantics">
|
||||
<div class="section" id="id1388">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For any integral constant <tt class="literal"><span class="pre">n</span></tt>, a <a class="reference" href="./metafunction.html">Metafunction</a> <tt class="literal"><span class="pre">fun</span></tt>, and arbitrary types <tt class="literal"><span class="pre">A1</span></tt>,... <tt class="literal"><span class="pre">An</span></tt>:</p>
|
||||
<p>For any integral constant <tt class="literal"><span class="pre">n</span></tt>, a <a class="reference internal" href="./metafunction.html">Metafunction</a> <tt class="literal"><span class="pre">fun</span></tt>, and arbitrary types <tt class="literal"><span class="pre">A1</span></tt>,... <tt class="literal"><span class="pre">An</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
template< typename A1,<em>...</em> typename A<em>n</em> > struct fun
|
||||
{
|
||||
@@ -79,24 +76,24 @@ template< typename A1,<em>...</em> typename A<em>n</em> > struct fun
|
||||
<a href="./aux-lambda-support.html" class="identifier">BOOST_MPL_AUX_LAMBDA_SUPPORT</a>(n, fun, (A1,<em>...</em>A<em>n</em>))
|
||||
};
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body">Appears in <tt class="literal"><span class="pre">fun</span></tt>'s scope, immediately followed by the scope-closing
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body">Appears in <tt class="literal"><span class="pre">fun</span></tt>'s scope, immediately followed by the scope-closing
|
||||
bracket (<tt class="literal"><span class="pre">}</span></tt>).</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body">None.</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body">Expands to nothing and has no effect on conforming compilers. On compilers that
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body">Expands to nothing and has no effect on conforming compilers. On compilers that
|
||||
don't support partial template specialization or/and template template parameters
|
||||
expands to an unspecified token sequence enabling <tt class="literal"><span class="pre">fun</span></tt> to participate in
|
||||
<a class="reference" href="./lambda-expression.html">Lambda Expression</a>s with the semantics described in this manual.</td>
|
||||
<a class="reference internal" href="./lambda-expression.html">Lambda Expression</a>s with the semantics described in this manual.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="aux-example">
|
||||
<div class="section" id="id1389">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
template< typename T, typename U = int > struct f
|
||||
@@ -106,18 +103,19 @@ template< typename T, typename U = int > struct f
|
||||
<a href="./aux-lambda-support.html" class="identifier">BOOST_MPL_AUX_LAMBDA_SUPPORT</a>(2, f, (T,U))
|
||||
};
|
||||
|
||||
typedef <a href="./apply.html" class="identifier">apply</a><tt class="literal"><span class="pre">1</span></tt>< f<char,_1>,long >::type r;
|
||||
typedef <a href="./apply.html" class="identifier">apply</a><tt class="literal"><span class="pre">1</span></tt>< f<char,<a href="./placeholders.html" class="identifier">_1</a>>,long >::type r;
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( is_same< r, char[sizeof(long)] > ));
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="aux-see-also">
|
||||
<div class="section" id="id1390">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./macros.html">Macros</a>, <a class="reference" href="./metafunctions.html">Metafunctions</a>, <a class="reference" href="./lambda-expression.html">Lambda Expression</a></p>
|
||||
<!-- modtime: November 10, 2004 04:45:01 +0000 -->
|
||||
<p><a class="reference internal" href="./macros.html">Macros</a>, <a class="reference internal" href="./metafunctions.html">Metafunctions</a>, <a class="reference internal" href="./lambda-expression.html">Lambda Expression</a></p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./broken-compiler.html" class="navigation-link">Prev</a> <a href="./terminology.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group">Back Along</span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./broken-compiler.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./broken-compiler-workarounds.html" class="navigation-link">Prev</a> <a href="./terminology.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group">Back Along</span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./broken-compiler-workarounds.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: Back Extensible Sequence</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,39 +12,39 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./sequences.html" class="navigation-link">Sequences</a> / <a href="./concepts.html" class="navigation-link">Concepts</a> / <a href="./back-extensible-sequence.html" class="navigation-link">Back Extensible Sequence</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="back-extensible-sequence">
|
||||
<h1><a class="toc-backref" href="./concepts.html#id329" name="back-extensible-sequence">Back Extensible Sequence</a></h1>
|
||||
<div class="section" id="back-description">
|
||||
<h1><a class="toc-backref" href="./concepts.html#id1400">Back Extensible Sequence</a></h1>
|
||||
<div class="section" id="id23">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>A <a class="reference" href="./back-extensible-sequence.html">Back Extensible Sequence</a> is an <a class="reference" href="./extensible-sequence.html">Extensible Sequence</a> that supports amortized constant
|
||||
<p>A <a class="reference internal" href="./back-extensible-sequence.html">Back Extensible Sequence</a> is an <a class="reference internal" href="./extensible-sequence.html">Extensible Sequence</a> that supports amortized constant
|
||||
time insertion and removal operations at the end.</p>
|
||||
</div>
|
||||
<div class="section" id="back-refinement-of">
|
||||
<div class="section" id="id24">
|
||||
<h3><a class="subsection-title" href="#refinement-of" name="refinement-of">Refinement of</a></h3>
|
||||
<p><a class="reference" href="./extensible-sequence.html">Extensible Sequence</a></p>
|
||||
<p><a class="reference internal" href="./extensible-sequence.html">Extensible Sequence</a></p>
|
||||
</div>
|
||||
<div class="section" id="back-expression-requirements">
|
||||
<div class="section" id="id25">
|
||||
<h3><a class="subsection-title" href="#expression-requirements" name="expression-requirements">Expression requirements</a></h3>
|
||||
<p>In addition to the requirements defined in <a class="reference" href="./extensible-sequence.html">Extensible Sequence</a>,
|
||||
for any <a class="reference" href="./back-extensible-sequence.html">Back Extensible Sequence</a> <tt class="literal"><span class="pre">s</span></tt> the following must be met:</p>
|
||||
<table border="1" class="table">
|
||||
<p>In addition to the requirements defined in <a class="reference internal" href="./extensible-sequence.html">Extensible Sequence</a>,
|
||||
for any <a class="reference internal" href="./back-extensible-sequence.html">Back Extensible Sequence</a> <tt class="literal"><span class="pre">s</span></tt> the following must be met:</p>
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="35%" />
|
||||
<col width="35%" />
|
||||
<col width="30%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Expression</th>
|
||||
<th>Type</th>
|
||||
<th>Complexity</th>
|
||||
<tr><th class="head">Expression</th>
|
||||
<th class="head">Type</th>
|
||||
<th class="head">Complexity</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./push-back.html" class="identifier">push_back</a><s,x>::type</span></tt></td>
|
||||
<td><a class="reference" href="./back-extensible-sequence.html">Back Extensible Sequence</a></td>
|
||||
<td><a class="reference internal" href="./back-extensible-sequence.html">Back Extensible Sequence</a></td>
|
||||
<td>Amortized constant time</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./pop-back.html" class="identifier">pop_back</a><s>::type</span></tt></td>
|
||||
<td><a class="reference" href="./back-extensible-sequence.html">Back Extensible Sequence</a></td>
|
||||
<td><a class="reference internal" href="./back-extensible-sequence.html">Back Extensible Sequence</a></td>
|
||||
<td>Amortized constant time</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./back.html" class="identifier">back</a><s>::type</span></tt></td>
|
||||
@@ -57,51 +54,52 @@ for any <a class="reference" href="./back-extensible-sequence.html">Back Extensi
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="back-expression-semantics">
|
||||
<div class="section" id="id26">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>The semantics of an expression are defined only
|
||||
where they differ from, or are not defined in <a class="reference" href="./extensible-sequence.html">Extensible Sequence</a>.</p>
|
||||
<table border="1" class="table">
|
||||
where they differ from, or are not defined in <a class="reference internal" href="./extensible-sequence.html">Extensible Sequence</a>.</p>
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="34%" />
|
||||
<col width="66%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Expression</th>
|
||||
<th>Semantics</th>
|
||||
<tr><th class="head">Expression</th>
|
||||
<th class="head">Semantics</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./push-back.html" class="identifier">push_back</a><s,x>::type</span></tt></td>
|
||||
<td>Equivalent to <tt class="literal"><span class="pre"><a href="./insert.html" class="identifier">insert</a><s,<a href="./end.html" class="identifier">end</a><s>::type,x>::type</span></tt>;
|
||||
see <a class="refentry reference" href="./push-back.html"><tt class="refentry literal"><span class="pre">push_back</span></tt></a>.</td>
|
||||
see <a class="reference internal" href="./push-back.html">push_back</a>.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./pop-back.html" class="identifier">pop_back</a><v>::type</span></tt></td>
|
||||
<td>Equivalent to <tt class="literal"><span class="pre"><a href="./erase.html" class="identifier">erase</a><s,<a href="./end.html" class="identifier">end</a><s>::type>::type</span></tt>;
|
||||
see <a class="refentry reference" href="./pop-back.html"><tt class="refentry literal"><span class="pre">pop_back</span></tt></a>.</td>
|
||||
see <a class="reference internal" href="./pop-back.html">pop_back</a>.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./back.html" class="identifier">back</a><s>::type</span></tt></td>
|
||||
<td>The last element in the sequence; see <a class="refentry reference" href="./back.html"><tt class="refentry literal"><span class="pre">back</span></tt></a>.</td>
|
||||
<td>The last element in the sequence; see <a class="reference internal" href="./back.html">back</a>.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="back-models">
|
||||
<div class="section" id="id27">
|
||||
<h3><a class="subsection-title" href="#models" name="models">Models</a></h3>
|
||||
<ul class="simple">
|
||||
<li><a class="refentry reference" href="./vector.html"><tt class="refentry literal"><span class="pre">vector</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./deque.html"><tt class="refentry literal"><span class="pre">deque</span></tt></a></li>
|
||||
<li><a class="reference internal" href="./vector.html">vector</a></li>
|
||||
<li><a class="reference internal" href="./deque.html">deque</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="section" id="back-see-also">
|
||||
<div class="section" id="id28">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./sequences.html">Sequences</a>, <a class="reference" href="./extensible-sequence.html">Extensible Sequence</a>, <a class="reference" href="./front-extensible-sequence.html">Front Extensible Sequence</a>, <a class="refentry reference" href="./push-back.html"><tt class="refentry literal"><span class="pre">push_back</span></tt></a>, <a class="refentry reference" href="./pop-back.html"><tt class="refentry literal"><span class="pre">pop_back</span></tt></a>, <a class="refentry reference" href="./back.html"><tt class="refentry literal"><span class="pre">back</span></tt></a></p>
|
||||
<!-- modtime: November 10, 2004 04:27:21 +0000 -->
|
||||
<p><a class="reference internal" href="./sequences.html">Sequences</a>, <a class="reference internal" href="./extensible-sequence.html">Extensible Sequence</a>, <a class="reference internal" href="./front-extensible-sequence.html">Front Extensible Sequence</a>, <a class="reference internal" href="./push-back.html">push_back</a>, <a class="reference internal" href="./pop-back.html">pop_back</a>, <a class="reference internal" href="./back.html">back</a></p>
|
||||
<!-- Sequences/Concepts//Associative Sequence |70 -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./front-extensible-sequence.html" class="navigation-link">Prev</a> <a href="./associative-sequence.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./front-extensible-sequence.html" class="navigation-link">Back</a> <a href="./associative-sequence.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./concepts.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: back_inserter</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,8 +12,8 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./algorithms.html" class="navigation-link">Algorithms</a> / <a href="./inserters.html" class="navigation-link">Inserters</a> / <a href="./back-inserter.html" class="navigation-link">back_inserter</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="back-inserter">
|
||||
<h1><a class="toc-backref" href="./inserters.html#id393" name="back-inserter">back_inserter</a></h1>
|
||||
<div class="section" id="inserters-back-synopsis">
|
||||
<h1><a class="toc-backref" href="./inserters.html#id1465">back_inserter</a></h1>
|
||||
<div class="section" id="id465">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
@@ -29,92 +26,93 @@ struct <a href="./back-inserter.html" class="identifier">back_inserter</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="inserters-back-description">
|
||||
<div class="section" id="id466">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Inserts elements at the end of the sequence.</p>
|
||||
</div>
|
||||
<div class="section" id="inserters-back-header">
|
||||
<div class="section" id="id467">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/back_inserter.hpp" class="header">boost/mpl/back_inserter.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="inserters-back-model-of">
|
||||
<div class="section" id="id468">
|
||||
<h3><a class="subsection-title" href="#model-of" name="model-of">Model of</a></h3>
|
||||
<p><a class="reference" href="./inserter.html">Inserter</a></p>
|
||||
<p><a class="reference internal" href="./inserter.html">Inserter</a></p>
|
||||
</div>
|
||||
<div class="section" id="inserters-back-parameters">
|
||||
<div class="section" id="id469">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="18%" />
|
||||
<col width="36%" />
|
||||
<col width="46%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">Seq</span></tt></td>
|
||||
<td><a class="reference" href="./back-extensible-sequence.html">Back Extensible Sequence</a></td>
|
||||
<td><a class="reference internal" href="./back-extensible-sequence.html">Back Extensible Sequence</a></td>
|
||||
<td>A sequence to bind the inserter to.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="inserters-back-expression-semantics">
|
||||
<div class="section" id="id470">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>The semantics of an expression are defined only
|
||||
where they differ from, or are not defined in <a class="reference" href="./inserter.html">Inserter</a>.</p>
|
||||
<p>For any <a class="reference" href="./back-extensible-sequence.html">Back Extensible Sequence</a> <tt class="literal"><span class="pre">s</span></tt>:</p>
|
||||
<table border="1" class="table">
|
||||
where they differ from, or are not defined in <a class="reference internal" href="./inserter.html">Inserter</a>.</p>
|
||||
<p>For any <a class="reference internal" href="./back-extensible-sequence.html">Back Extensible Sequence</a> <tt class="literal"><span class="pre">s</span></tt>:</p>
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="33%" />
|
||||
<col width="67%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Expression</th>
|
||||
<th>Semantics</th>
|
||||
<tr><th class="head">Expression</th>
|
||||
<th class="head">Semantics</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./back-inserter.html" class="identifier">back_inserter</a><s></span></tt></td>
|
||||
<td><p class="first">An <a class="reference" href="./inserter.html">Inserter</a> <tt class="literal"><span class="pre">in</span></tt>, equivalent to</p>
|
||||
<td><p class="first">An <a class="reference internal" href="./inserter.html">Inserter</a> <tt class="literal"><span class="pre">in</span></tt>, equivalent to</p>
|
||||
<pre class="last literal-block">
|
||||
struct in : <a href="./inserter.html" class="identifier">inserter</a><s,<a href="./push-back.html" class="identifier">push_back</a><_1,_2> > {};
|
||||
struct in : <a href="./inserter-class.html" class="identifier">inserter</a><s,<a href="./push-back.html" class="identifier">push_back</a><<a href="./placeholders.html" class="identifier">_1</a>,<a href="./placeholders.html" class="identifier">_2</a>> > {};
|
||||
</pre>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="inserters-back-complexity">
|
||||
<div class="section" id="id471">
|
||||
<h3><a class="subsection-title" href="#complexity" name="complexity">Complexity</a></h3>
|
||||
<p>Amortized constant time.</p>
|
||||
</div>
|
||||
<div class="section" id="inserters-back-example">
|
||||
<div class="section" id="id472">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./copy.html" class="identifier">copy</a><
|
||||
<a href="./range-c.html" class="identifier">range_c</a><int,5,10>
|
||||
, <a href="./back-inserter.html" class="identifier">back_inserter</a>< <a href="./vector-c.html" class="identifier">vector_c</a><int,0,1,2,3,4> >
|
||||
>::type range;
|
||||
|
||||
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( <a href="./equal.html" class="identifier">equal</a>< range, <a href="./range-c.html" class="identifier">range_c</a><int,0,10> > ));
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="inserters-back-see-also">
|
||||
<div class="section" id="id473">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./algorithms.html">Algorithms</a>, <a class="reference" href="./inserter.html">Inserter</a>, <a class="reference" href="./reversible-algorithm.html">Reversible Algorithm</a>, <a class="refentry reference" href="./inserters-inserter.html"><tt class="refentry literal"><span class="pre">inserter</span></tt></a>, <a class="refentry reference" href="./front-inserter.html"><tt class="refentry literal"><span class="pre">front_inserter</span></tt></a>, <a class="refentry reference" href="./push-back.html"><tt class="refentry literal"><span class="pre">push_back</span></tt></a></p>
|
||||
<!-- modtime: November 10, 2004 04:44:52 +0000 -->
|
||||
<p><a class="reference internal" href="./algorithms.html">Algorithms</a>, <a class="reference internal" href="./inserter.html">Inserter</a>, <a class="reference internal" href="./reversible-algorithm.html">Reversible Algorithm</a>, <a class="reference internal" href="./inserter-class.html">inserter (class)</a>, <a class="reference internal" href="./front-inserter.html">front_inserter</a>, <a class="reference internal" href="./push-back.html">push_back</a></p>
|
||||
<!-- Algorithms/Inserters//front_inserter -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./inserters.html" class="navigation-link">Prev</a> <a href="./front-inserter.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group">Back <a href="./front-inserter.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./inserters.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+29
-29
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: back</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,8 +12,8 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./sequences.html" class="navigation-link">Sequences</a> / <a href="./intrinsic-metafunctions.html" class="navigation-link">Intrinsic Metafunctions</a> / <a href="./back.html" class="navigation-link">back</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="back">
|
||||
<h1><a class="toc-backref" href="./intrinsic-metafunctions.html#id355" name="back">back</a></h1>
|
||||
<div class="section" id="back-synopsis">
|
||||
<h1><a class="toc-backref" href="./intrinsic-metafunctions.html#id1427">back</a></h1>
|
||||
<div class="section" id="id193">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
@@ -28,55 +25,57 @@ struct <a href="./back.html" class="identifier">back</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="intrinsic-back-description">
|
||||
<div class="section" id="id194">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Returns the last element in the sequence.</p>
|
||||
</div>
|
||||
<div class="section" id="back-header">
|
||||
<div class="section" id="id195">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/back.hpp" class="header">boost/mpl/back.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="back-model-of">
|
||||
<div class="section" id="id196">
|
||||
<h3><a class="subsection-title" href="#model-of" name="model-of">Model of</a></h3>
|
||||
<p><a class="reference" href="./tag-dispatched.html">Tag Dispatched Metafunction</a></p>
|
||||
<p><a class="reference internal" href="./tag-dispatched-metafunction.html">Tag Dispatched Metafunction</a></p>
|
||||
</div>
|
||||
<div class="section" id="back-parameters">
|
||||
<div class="section" id="id197">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="19%" />
|
||||
<col width="35%" />
|
||||
<col width="45%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">Sequence</span></tt></td>
|
||||
<td><a class="reference" href="./bidirectional-sequence.html">Bidirectional Sequence</a></td>
|
||||
<td><a class="reference internal" href="./bidirectional-sequence.html">Bidirectional Sequence</a></td>
|
||||
<td>A sequence to be examined.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="intrinsic-back-expression-semantics">
|
||||
<div class="section" id="id198">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For any <a class="reference" href="./bidirectional-sequence.html">Bidirectional Sequence</a> <tt class="literal"><span class="pre">s</span></tt>:</p>
|
||||
<p>For any <a class="reference internal" href="./bidirectional-sequence.html">Bidirectional Sequence</a> <tt class="literal"><span class="pre">s</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./back.html" class="identifier">back</a><s>::type t;
|
||||
typedef <a href="./back.html" class="identifier">back</a><s>::type t;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body">A type.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first">A type.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body"><tt class="literal"><span class="pre"><a href="./empty.html" class="identifier">empty</a><s>::value</span> <span class="pre">==</span> <span class="pre">false</span></tt>.</td>
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body"><p class="first"><tt class="literal"><span class="pre"><a href="./empty.html" class="identifier">empty</a><s>::value</span> <span class="pre">==</span> <span class="pre">false</span></tt>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Equivalent to</p>
|
||||
<pre class="last literal-block">
|
||||
@@ -87,31 +86,32 @@ typedef <a href="./deref.html" class="identifier">deref</a>< <a href="./prior
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="back-complexity">
|
||||
<div class="section" id="id199">
|
||||
<h3><a class="subsection-title" href="#complexity" name="complexity">Complexity</a></h3>
|
||||
<p>Amortized constant time.</p>
|
||||
</div>
|
||||
<div class="section" id="back-example">
|
||||
<div class="section" id="id200">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./range-c.html" class="identifier">range_c</a><int,0,1> range1;
|
||||
typedef <a href="./range-c.html" class="identifier">range_c</a><int,0,10> range2;
|
||||
typedef <a href="./range-c.html" class="identifier">range_c</a><int,-10,0> range3;
|
||||
|
||||
|
||||
<a href="./assert-relation.html" class="identifier">BOOST_MPL_ASSERT_RELATION</a>( <a href="./back.html" class="identifier">back</a><range1>::value, ==, 0 );
|
||||
<a href="./assert-relation.html" class="identifier">BOOST_MPL_ASSERT_RELATION</a>( <a href="./back.html" class="identifier">back</a><range2>::value, ==, 9 );
|
||||
<a href="./assert-relation.html" class="identifier">BOOST_MPL_ASSERT_RELATION</a>( <a href="./back.html" class="identifier">back</a><range3>::value, ==, -1 );
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="intrinsic-back-see-also">
|
||||
<div class="section" id="id201">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./bidirectional-sequence.html">Bidirectional Sequence</a>, <a class="refentry reference" href="./front.html"><tt class="refentry literal"><span class="pre">front</span></tt></a>, <a class="refentry reference" href="./push-back.html"><tt class="refentry literal"><span class="pre">push_back</span></tt></a>, <a class="refentry reference" href="./end.html"><tt class="refentry literal"><span class="pre">end</span></tt></a>, <a class="refentry reference" href="./deref.html"><tt class="refentry literal"><span class="pre">deref</span></tt></a>, <a class="refentry reference" href="./at.html"><tt class="refentry literal"><span class="pre">at</span></tt></a></p>
|
||||
<!-- modtime: November 13, 2004 01:24:30 +0000 -->
|
||||
<p><a class="reference internal" href="./bidirectional-sequence.html">Bidirectional Sequence</a>, <a class="reference internal" href="./front.html">front</a>, <a class="reference internal" href="./push-back.html">push_back</a>, <a class="reference internal" href="./end.html">end</a>, <a class="reference internal" href="./deref.html">deref</a>, <a class="reference internal" href="./at.html">at</a></p>
|
||||
<!-- Sequences/Intrinsic Metafunctions//begin -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./at-c.html" class="navigation-link">Prev</a> <a href="./begin.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./at-c.html" class="navigation-link">Back</a> <a href="./begin.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./intrinsic-metafunctions.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+26
-28
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: begin</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,8 +12,8 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./sequences.html" class="navigation-link">Sequences</a> / <a href="./intrinsic-metafunctions.html" class="navigation-link">Intrinsic Metafunctions</a> / <a href="./begin.html" class="navigation-link">begin</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="begin">
|
||||
<h1><a class="toc-backref" href="./intrinsic-metafunctions.html#id356" name="begin">begin</a></h1>
|
||||
<div class="section" id="begin-synopsis">
|
||||
<h1><a class="toc-backref" href="./intrinsic-metafunctions.html#id1428">begin</a></h1>
|
||||
<div class="section" id="id202">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
@@ -28,33 +25,33 @@ struct <a href="./begin.html" class="identifier">begin</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="begin-description">
|
||||
<div class="section" id="id203">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Returns an iterator that points to the first element of the sequence. If
|
||||
the argument is not a <a class="reference" href="./forward-sequence.html">Forward Sequence</a>, returns <a class="refentry reference" href="./void.html"><tt class="refentry literal"><span class="pre">void_</span></tt></a>.</p>
|
||||
the argument is not a <a class="reference internal" href="./forward-sequence.html">Forward Sequence</a>, returns <a class="reference internal" href="./void.html">void_</a>.</p>
|
||||
</div>
|
||||
<div class="section" id="begin-header">
|
||||
<div class="section" id="id204">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/begin_end.hpp" class="header">boost/mpl/begin_end.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="begin-model-of">
|
||||
<div class="section" id="id205">
|
||||
<h3><a class="subsection-title" href="#model-of" name="model-of">Model of</a></h3>
|
||||
<p><a class="reference" href="./tag-dispatched.html">Tag Dispatched Metafunction</a></p>
|
||||
<p><a class="reference internal" href="./tag-dispatched-metafunction.html">Tag Dispatched Metafunction</a></p>
|
||||
</div>
|
||||
<div class="section" id="begin-parameters">
|
||||
<div class="section" id="id206">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="18%" />
|
||||
<col width="22%" />
|
||||
<col width="60%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
@@ -66,32 +63,32 @@ returned.</td>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="begin-expression-semantics">
|
||||
<div class="section" id="id207">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For any arbitrary type <tt class="literal"><span class="pre">x</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./begin.html" class="identifier">begin</a><x>::type first;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference" href="./forward-iterator.html">Forward Iterator</a> or <a class="refentry reference" href="./void.html"><tt class="refentry literal"><span class="pre">void_</span></tt></a>.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference internal" href="./forward-iterator.html">Forward Iterator</a> or <a class="reference internal" href="./void.html">void_</a>.</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body">If <tt class="literal"><span class="pre">x</span></tt> is a <a class="reference" href="./forward-sequence.html">Forward Sequence</a>, <tt class="literal"><span class="pre">first</span></tt> is an iterator pointing to the
|
||||
first element of <tt class="literal"><span class="pre">s</span></tt>; otherwise <tt class="literal"><span class="pre">first</span></tt> is <a class="refentry reference" href="./void.html"><tt class="refentry literal"><span class="pre">void_</span></tt></a>.</td>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body">If <tt class="literal"><span class="pre">x</span></tt> is a <a class="reference internal" href="./forward-sequence.html">Forward Sequence</a>, <tt class="literal"><span class="pre">first</span></tt> is an iterator pointing to the
|
||||
first element of <tt class="literal"><span class="pre">s</span></tt>; otherwise <tt class="literal"><span class="pre">first</span></tt> is <a class="reference internal" href="./void.html">void_</a>.</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Postcondition:</th><td class="field-body">If <tt class="literal"><span class="pre">first</span></tt> is an iterator, it is either dereferenceable or past-the-end; it
|
||||
<tr class="field"><th class="field-name">Postcondition:</th><td class="field-body">If <tt class="literal"><span class="pre">first</span></tt> is an iterator, it is either dereferenceable or past-the-end; it
|
||||
is past-the-end if and only if <tt class="literal"><span class="pre"><a href="./size.html" class="identifier">size</a><x>::value</span> <span class="pre">==</span> <span class="pre">0</span></tt>.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="begin-complexity">
|
||||
<div class="section" id="id208">
|
||||
<h3><a class="subsection-title" href="#complexity" name="complexity">Complexity</a></h3>
|
||||
<p>Amortized constant time.</p>
|
||||
</div>
|
||||
<div class="section" id="begin-example">
|
||||
<div class="section" id="id209">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./vector.html" class="identifier">vector</a>< unsigned char,unsigned short,
|
||||
@@ -103,15 +100,16 @@ typedef <a href="./begin.html" class="identifier">begin</a><unsigned_types>
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( is_same< <a href="./begin.html" class="identifier">begin</a><int>::type, <a href="./void.html" class="identifier">void_</a> > ));
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="begin-see-also">
|
||||
<div class="section" id="id210">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./iterators.html">Iterators</a>, <a class="reference" href="./forward-sequence.html">Forward Sequence</a>, <a class="refentry reference" href="./end.html"><tt class="refentry literal"><span class="pre">end</span></tt></a>, <a class="refentry reference" href="./size.html"><tt class="refentry literal"><span class="pre">size</span></tt></a>, <a class="refentry reference" href="./empty.html"><tt class="refentry literal"><span class="pre">empty</span></tt></a></p>
|
||||
<!-- modtime: November 13, 2004 01:25:11 +0000 -->
|
||||
<p><a class="reference internal" href="./iterators.html">Iterators</a>, <a class="reference internal" href="./forward-sequence.html">Forward Sequence</a>, <a class="reference internal" href="./end.html">end</a>, <a class="reference internal" href="./size.html">size</a>, <a class="reference internal" href="./empty.html">empty</a></p>
|
||||
<!-- Sequences/Intrinsic Metafunctions//clear -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./back.html" class="navigation-link">Prev</a> <a href="./clear.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./back.html" class="navigation-link">Back</a> <a href="./clear.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./intrinsic-metafunctions.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: Bidirectional Iterator</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,70 +12,70 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./iterators.html" class="navigation-link">Iterators</a> / <a href="./iterators-concepts.html" class="navigation-link">Concepts</a> / <a href="./bidirectional-iterator.html" class="navigation-link">Bidirectional Iterator</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="bidirectional-iterator">
|
||||
<h1><a class="toc-backref" href="./iterators-concepts.html#id379" name="bidirectional-iterator">Bidirectional Iterator</a></h1>
|
||||
<div class="section" id="iterators-bidirectional-description">
|
||||
<h1><a class="toc-backref" href="./iterators-concepts.html#id1451">Bidirectional Iterator</a></h1>
|
||||
<div class="section" id="id390">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>A <a class="reference" href="./bidirectional-iterator.html">Bidirectional Iterator</a> is a <a class="reference" href="./forward-iterator.html">Forward Iterator</a> that provides a way to
|
||||
<p>A <a class="reference internal" href="./bidirectional-iterator.html">Bidirectional Iterator</a> is a <a class="reference internal" href="./forward-iterator.html">Forward Iterator</a> that provides a way to
|
||||
obtain an iterator to the previous element in a sequence.</p>
|
||||
</div>
|
||||
<div class="section" id="bidirectional-refinement-of">
|
||||
<div class="section" id="id391">
|
||||
<h3><a class="subsection-title" href="#refinement-of" name="refinement-of">Refinement of</a></h3>
|
||||
<p><a class="reference" href="./forward-iterator.html">Forward Iterator</a></p>
|
||||
<p><a class="reference internal" href="./forward-iterator.html">Forward Iterator</a></p>
|
||||
</div>
|
||||
<div class="section" id="bidirectional-definitions">
|
||||
<div class="section" id="id392">
|
||||
<h3><a class="subsection-title" href="#definitions" name="definitions">Definitions</a></h3>
|
||||
<ul class="simple">
|
||||
<li>a bidirectional iterator <tt class="literal"><span class="pre">i</span></tt> is <cite>decrementable</cite> if there is a "previous"
|
||||
iterator, that is, if <tt class="literal"><span class="pre"><a href="./prior.html" class="identifier">prior</a><i>::type</span></tt> expression is well-defined;
|
||||
iterators pointing to the first element of the sequence are not
|
||||
<li>a bidirectional iterator <tt class="literal"><span class="pre">i</span></tt> is <cite>decrementable</cite> if there is a "previous"
|
||||
iterator, that is, if <tt class="literal"><span class="pre"><a href="./prior.html" class="identifier">prior</a><i>::type</span></tt> expression is well-defined;
|
||||
iterators pointing to the first element of the sequence are not
|
||||
decrementable.</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="section" id="iterators-bidirectional-expression-requirements">
|
||||
<div class="section" id="id393">
|
||||
<h3><a class="subsection-title" href="#expression-requirements" name="expression-requirements">Expression requirements</a></h3>
|
||||
<p>In addition to the requirements defined in <a class="reference" href="./forward-iterator.html">Forward Iterator</a>,
|
||||
<p>In addition to the requirements defined in <a class="reference internal" href="./forward-iterator.html">Forward Iterator</a>,
|
||||
the following requirements must be met.</p>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="25%" />
|
||||
<col width="46%" />
|
||||
<col width="29%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Expression</th>
|
||||
<th>Type</th>
|
||||
<th>Complexity</th>
|
||||
<tr><th class="head">Expression</th>
|
||||
<th class="head">Type</th>
|
||||
<th class="head">Complexity</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./next.html" class="identifier">next</a><i>::type</span></tt></td>
|
||||
<td><a class="reference" href="./bidirectional-iterator.html">Bidirectional Iterator</a></td>
|
||||
<td><a class="reference internal" href="./bidirectional-iterator.html">Bidirectional Iterator</a></td>
|
||||
<td>Amortized constant time</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./prior.html" class="identifier">prior</a><i>::type</span></tt></td>
|
||||
<td><a class="reference" href="./bidirectional-iterator.html">Bidirectional Iterator</a></td>
|
||||
<td><a class="reference internal" href="./bidirectional-iterator.html">Bidirectional Iterator</a></td>
|
||||
<td>Amortized constant time</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre">i::category</span></tt></td>
|
||||
<td><a class="reference" href="./integral-constant.html">Integral Constant</a>, convertible
|
||||
<td><a class="reference internal" href="./integral-constant.html">Integral Constant</a>, convertible
|
||||
to <tt class="literal"><span class="pre">bidirectional_iterator_tag</span></tt></td>
|
||||
<td>Constant time</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="iterators-bidirectional-expression-semantics">
|
||||
<div class="section" id="id394">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./prior.html" class="identifier">prior</a><i>::type j;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body"><tt class="literal"><span class="pre">i</span></tt> is decrementable</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><tt class="literal"><span class="pre">j</span></tt> is an iterator pointing to the previous element of the
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><tt class="literal"><span class="pre">j</span></tt> is an iterator pointing to the previous element of the
|
||||
sequence</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Postcondition:</th><td class="field-body"><tt class="literal"><span class="pre">j</span></tt> is dereferenceable and incrementable</td>
|
||||
@@ -86,25 +83,26 @@ sequence</td>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="bidirectional-invariants">
|
||||
<div class="section" id="id395">
|
||||
<h3><a class="subsection-title" href="#invariants" name="invariants">Invariants</a></h3>
|
||||
<p>For any bidirectional iterators <tt class="literal"><span class="pre">i</span></tt> and <tt class="literal"><span class="pre">j</span></tt> the following invariants
|
||||
<p>For any bidirectional iterators <tt class="literal"><span class="pre">i</span></tt> and <tt class="literal"><span class="pre">j</span></tt> the following invariants
|
||||
always hold:</p>
|
||||
<ul class="simple">
|
||||
<li>If <tt class="literal"><span class="pre">i</span></tt> is incrementable, then <tt class="literal"><span class="pre"><a href="./prior.html" class="identifier">prior</a><</span> <span class="pre"><a href="./next.html" class="identifier">next</a><i>::type</span> <span class="pre">>::type</span></tt> is a null
|
||||
<li>If <tt class="literal"><span class="pre">i</span></tt> is incrementable, then <tt class="literal"><span class="pre"><a href="./prior.html" class="identifier">prior</a><</span> <span class="pre"><a href="./next.html" class="identifier">next</a><i>::type</span> <span class="pre">>::type</span></tt> is a null
|
||||
operation; similarly, if <tt class="literal"><span class="pre">i</span></tt> is decrementable, <tt class="literal"><span class="pre"><a href="./next.html" class="identifier">next</a><</span> <span class="pre"><a href="./prior.html" class="identifier">prior</a><i>::type</span> <span class="pre">>::type</span></tt>
|
||||
is a null operation.</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="section" id="iterators-bidirectional-see-also">
|
||||
<div class="section" id="id396">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./iterators.html">Iterators</a>, <a class="reference" href="./forward-iterator.html">Forward Iterator</a>, <a class="reference" href="./random-access-iterator.html">Random Access Iterator</a>, <a class="reference" href="./bidirectional-sequence.html">Bidirectional Sequence</a>, <a class="refentry reference" href="./prior.html"><tt class="refentry literal"><span class="pre">prior</span></tt></a></p>
|
||||
<!-- modtime: November 15, 2004 02:44:55 +0000 -->
|
||||
<p><a class="reference internal" href="./iterators.html">Iterators</a>, <a class="reference internal" href="./forward-iterator.html">Forward Iterator</a>, <a class="reference internal" href="./random-access-iterator.html">Random Access Iterator</a>, <a class="reference internal" href="./bidirectional-sequence.html">Bidirectional Sequence</a>, <a class="reference internal" href="./prior.html">prior</a></p>
|
||||
<!-- Iterators/Concepts//Random Access Iterator |30 -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./forward-iterator.html" class="navigation-link">Prev</a> <a href="./random-access-iterator.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./forward-iterator.html" class="navigation-link">Back</a> <a href="./random-access-iterator.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./iterators-concepts.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: Bidirectional Sequence</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,39 +12,39 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./sequences.html" class="navigation-link">Sequences</a> / <a href="./concepts.html" class="navigation-link">Concepts</a> / <a href="./bidirectional-sequence.html" class="navigation-link">Bidirectional Sequence</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="bidirectional-sequence">
|
||||
<h1><a class="toc-backref" href="./concepts.html#id325" name="bidirectional-sequence">Bidirectional Sequence</a></h1>
|
||||
<div class="section" id="bidirectional-description">
|
||||
<h1><a class="toc-backref" href="./concepts.html#id1396">Bidirectional Sequence</a></h1>
|
||||
<div class="section" id="id1">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>A <a class="reference" href="./bidirectional-sequence.html">Bidirectional Sequence</a> is a <a class="reference" href="./forward-sequence.html">Forward Sequence</a> whose iterators model
|
||||
<a class="reference" href="./bidirectional-iterator.html">Bidirectional Iterator</a>.</p>
|
||||
<p>A <a class="reference internal" href="./bidirectional-sequence.html">Bidirectional Sequence</a> is a <a class="reference internal" href="./forward-sequence.html">Forward Sequence</a> whose iterators model
|
||||
<a class="reference internal" href="./bidirectional-iterator.html">Bidirectional Iterator</a>.</p>
|
||||
</div>
|
||||
<div class="section" id="refinement-of">
|
||||
<h3><a class="subsection-title" href="#refinement-of" name="refinement-of">Refinement of</a></h3>
|
||||
<p><a class="reference" href="./forward-sequence.html">Forward Sequence</a></p>
|
||||
<h3>Refinement of</h3>
|
||||
<p><a class="reference internal" href="./forward-sequence.html">Forward Sequence</a></p>
|
||||
</div>
|
||||
<div class="section" id="bidirectional-expression-requirements">
|
||||
<div class="section" id="id2">
|
||||
<h3><a class="subsection-title" href="#expression-requirements" name="expression-requirements">Expression requirements</a></h3>
|
||||
<p>In addition to the requirements defined in <a class="reference" href="./forward-sequence.html">Forward Sequence</a>,
|
||||
for any <a class="reference" href="./bidirectional-sequence.html">Bidirectional Sequence</a> <tt class="literal"><span class="pre">s</span></tt> the following must be met:</p>
|
||||
<table border="1" class="table">
|
||||
<p>In addition to the requirements defined in <a class="reference internal" href="./forward-sequence.html">Forward Sequence</a>,
|
||||
for any <a class="reference internal" href="./bidirectional-sequence.html">Bidirectional Sequence</a> <tt class="literal"><span class="pre">s</span></tt> the following must be met:</p>
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="30%" />
|
||||
<col width="39%" />
|
||||
<col width="30%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Expression</th>
|
||||
<th>Type</th>
|
||||
<th>Complexity</th>
|
||||
<tr><th class="head">Expression</th>
|
||||
<th class="head">Type</th>
|
||||
<th class="head">Complexity</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./begin.html" class="identifier">begin</a><s>::type</span></tt></td>
|
||||
<td><a class="reference" href="./bidirectional-iterator.html">Bidirectional Iterator</a></td>
|
||||
<td><a class="reference internal" href="./bidirectional-iterator.html">Bidirectional Iterator</a></td>
|
||||
<td>Amortized constant time</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./end.html" class="identifier">end</a><s>::type</span></tt></td>
|
||||
<td><a class="reference" href="./bidirectional-iterator.html">Bidirectional Iterator</a></td>
|
||||
<td><a class="reference internal" href="./bidirectional-iterator.html">Bidirectional Iterator</a></td>
|
||||
<td>Amortized constant time</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./back.html" class="identifier">back</a><s>::type</span></tt></td>
|
||||
@@ -57,43 +54,44 @@ for any <a class="reference" href="./bidirectional-sequence.html">Bidirectional
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="bidirectional-expression-semantics">
|
||||
<div class="section" id="id3">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>The semantics of an expression are defined only
|
||||
where they differ from, or are not defined in <a class="reference" href="./forward-sequence.html">Forward Sequence</a>.</p>
|
||||
<table border="1" class="table">
|
||||
where they differ from, or are not defined in <a class="reference internal" href="./forward-sequence.html">Forward Sequence</a>.</p>
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="28%" />
|
||||
<col width="72%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Expression</th>
|
||||
<th>Semantics</th>
|
||||
<tr><th class="head">Expression</th>
|
||||
<th class="head">Semantics</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./back.html" class="identifier">back</a><s>::type</span></tt></td>
|
||||
<td>The last element in the sequence; see <a class="refentry reference" href="./back.html"><tt class="refentry literal"><span class="pre">back</span></tt></a>.</td>
|
||||
<td>The last element in the sequence; see <a class="reference internal" href="./back.html">back</a>.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="bidirectional-models">
|
||||
<div class="section" id="id4">
|
||||
<h3><a class="subsection-title" href="#models" name="models">Models</a></h3>
|
||||
<ul class="simple">
|
||||
<li><a class="refentry reference" href="./vector.html"><tt class="refentry literal"><span class="pre">vector</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./range-c.html"><tt class="refentry literal"><span class="pre">range_c</span></tt></a></li>
|
||||
<li><a class="reference internal" href="./vector.html">vector</a></li>
|
||||
<li><a class="reference internal" href="./range-c.html">range_c</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="section" id="bidirectional-see-also">
|
||||
<div class="section" id="id5">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./sequences.html">Sequences</a>, <a class="reference" href="./forward-sequence.html">Forward Sequence</a>, <a class="reference" href="./random-access-sequence.html">Random Access Sequence</a>, <a class="reference" href="./bidirectional-iterator.html">Bidirectional Iterator</a>, <a class="refentry reference" href="./begin.html"><tt class="refentry literal"><span class="pre">begin</span></tt></a> / <a class="refentry reference" href="./end.html"><tt class="refentry literal"><span class="pre">end</span></tt></a>, <a class="refentry reference" href="./back.html"><tt class="refentry literal"><span class="pre">back</span></tt></a></p>
|
||||
<!-- modtime: November 13, 2004 00:39:57 +0000 -->
|
||||
<p><a class="reference internal" href="./sequences.html">Sequences</a>, <a class="reference internal" href="./forward-sequence.html">Forward Sequence</a>, <a class="reference internal" href="./random-access-sequence.html">Random Access Sequence</a>, <a class="reference internal" href="./bidirectional-iterator.html">Bidirectional Iterator</a>, <a class="reference internal" href="./begin.html">begin</a> / <a class="reference internal" href="./end.html">end</a>, <a class="reference internal" href="./back.html">back</a></p>
|
||||
<!-- Sequences/Concepts//Random Access Sequence |30 -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./forward-sequence.html" class="navigation-link">Prev</a> <a href="./random-access-sequence.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./forward-sequence.html" class="navigation-link">Back</a> <a href="./random-access-sequence.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./concepts.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+51
-53
@@ -1,25 +1,22 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: bind</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
<body class="docframe refmanual">
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./lambda.html" class="navigation-link">Prev</a> <a href="./quote.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./lambda.html" class="navigation-link">Back</a> <a href="./quote.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./composition-and-argument.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./metafunctions.html" class="navigation-link">Metafunctions</a> / <a href="./composition-and-argument.html" class="navigation-link">Composition and Argument Binding</a> / <a href="./bind.html" class="navigation-link">bind</a></td>
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./lambda.html" class="navigation-link">Prev</a> <a href="./quote.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./lambda.html" class="navigation-link">Back</a> <a href="./quote.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./composition-and-argument-binding.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./metafunctions.html" class="navigation-link">Metafunctions</a> / <a href="./composition-and-argument-binding.html" class="navigation-link">Composition and Argument Binding</a> / <a href="./bind.html" class="navigation-link">bind</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="bind">
|
||||
<h1><a class="toc-backref" href="./composition-and-argument.html#id457" name="bind">bind</a></h1>
|
||||
<div class="section" id="bind-synopsis">
|
||||
<h1><a class="toc-backref" href="./composition-and-argument-binding.html#id1531">bind</a></h1>
|
||||
<div class="section" id="id929">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
template<
|
||||
typename F
|
||||
>
|
||||
struct bind0
|
||||
@@ -28,7 +25,7 @@ struct bind0
|
||||
// <em>...</em>
|
||||
};
|
||||
|
||||
template<
|
||||
template<
|
||||
typename F, typename A1
|
||||
>
|
||||
struct bind1
|
||||
@@ -39,7 +36,7 @@ struct bind1
|
||||
|
||||
<em>...</em>
|
||||
|
||||
template<
|
||||
template<
|
||||
typename F, typename A1,<em>...</em> typename An
|
||||
>
|
||||
struct <a href="./bind.html" class="identifier">bind</a><em>n</em>
|
||||
@@ -48,7 +45,7 @@ struct <a href="./bind.html" class="identifier">bind</a><em>n</em>
|
||||
// <em>...</em>
|
||||
};
|
||||
|
||||
template<
|
||||
template<
|
||||
typename F
|
||||
, typename A1 = <em>unspecified</em>
|
||||
<em>...</em>
|
||||
@@ -61,40 +58,40 @@ struct <a href="./bind.html" class="identifier">bind</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="bind-description">
|
||||
<div class="section" id="id930">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p><tt class="literal"><span class="pre"><a href="./bind.html" class="identifier">bind</a></span></tt> is a higher-order primitive for <a class="reference" href="./metafunction-class.html">Metafunction Class</a> composition
|
||||
and argument binding. In essence, it's a compile-time counterpart of
|
||||
the similar run-time functionality provided by <a class="reference" href="http://www.boost.org/libs/bind/bind.html" target="_top">Boost.Bind</a> and <a class="reference" href="http://www.boost.org/libs/lambda/doc/index.html" target="_top">Boost.Lambda</a>
|
||||
<p><tt class="literal"><span class="pre"><a href="./bind.html" class="identifier">bind</a></span></tt> is a higher-order primitive for <a class="reference internal" href="./metafunction-class.html">Metafunction Class</a> composition
|
||||
and argument binding. In essence, it's a compile-time counterpart of
|
||||
the similar run-time functionality provided by <a class="reference external" href="http://www.boost.org/libs/bind/bind.html" target="_top">Boost.Bind</a> and <a class="reference external" href="http://www.boost.org/libs/lambda/doc/index.html" target="_top">Boost.Lambda</a>
|
||||
libraries.</p>
|
||||
</div>
|
||||
<div class="section" id="bind-header">
|
||||
<div class="section" id="id931">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/bind.hpp" class="header">boost/mpl/bind.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="bind-model-of">
|
||||
<div class="section" id="id932">
|
||||
<h3><a class="subsection-title" href="#model-of" name="model-of">Model of</a></h3>
|
||||
<p><a class="reference" href="./metafunction-class.html">Metafunction Class</a></p>
|
||||
<p><a class="reference internal" href="./metafunction-class.html">Metafunction Class</a></p>
|
||||
</div>
|
||||
<div class="section" id="bind-parameters">
|
||||
<div class="section" id="id933">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="15%" />
|
||||
<col width="36%" />
|
||||
<col width="48%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">F</span></tt></td>
|
||||
<td><a class="reference" href="./metafunction-class.html">Metafunction Class</a></td>
|
||||
<td><a class="reference internal" href="./metafunction-class.html">Metafunction Class</a></td>
|
||||
<td>An metafunction class to perform binding on.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre">A1</span></tt>,... <tt class="literal"><span class="pre">An</span></tt></td>
|
||||
@@ -104,22 +101,22 @@ libraries.</p>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="bind-expression-semantics">
|
||||
<div class="section" id="id934">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For any <a class="reference" href="./metafunction-class.html">Metafunction Class</a> <tt class="literal"><span class="pre">f</span></tt> and arbitrary types <tt class="literal"><span class="pre">a1</span></tt>,... <tt class="literal"><span class="pre">an</span></tt>:</p>
|
||||
<p>For any <a class="reference internal" href="./metafunction-class.html">Metafunction Class</a> <tt class="literal"><span class="pre">f</span></tt> and arbitrary types <tt class="literal"><span class="pre">a1</span></tt>,... <tt class="literal"><span class="pre">an</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./bind.html" class="identifier">bind</a><f,a1,...a<em>n</em>> g;
|
||||
typedef <a href="./bind.html" class="identifier">bind</a><em>n</em><f,a1,...a<em>n</em>> g;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference" href="./metafunction-class.html">Metafunction Class</a></td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference internal" href="./metafunction-class.html">Metafunction Class</a></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<a class="target" id="bind-semantics" name="bind-semantics"></a><table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" id="bind-semantics" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
@@ -127,17 +124,17 @@ typedef <a href="./bind.html" class="identifier">bind</a><em>n</em><f,a1,...a
|
||||
<pre class="literal-block">
|
||||
struct g
|
||||
{
|
||||
template<
|
||||
template<
|
||||
typename U1 = <em>unspecified</em>
|
||||
<em>...</em>
|
||||
, typename U<em>n</em> = <em>unspecified</em>
|
||||
>
|
||||
struct <a href="./apply.html" class="identifier">apply</a>
|
||||
: <a href="./apply-wrap.html" class="identifier">apply_wrap</a><em>n</em><
|
||||
typename h0<f,U1,<em>...</em>U<em>n</em>>::type
|
||||
, typename h1<a1,U1,<em>...</em>U<em>n</em>>::type
|
||||
typename h0<f,U1,<em>...</em>U<em>n</em>>::type
|
||||
, typename h1<a1,U1,<em>...</em>U<em>n</em>>::type
|
||||
<em>...</em>
|
||||
, typename h<em>n</em><a<em>n</em>,U1,<em>...</em>U<em>n</em>>::type
|
||||
, typename h<em>n</em><a<em>n</em>,U1,<em>...</em>U<em>n</em>>::type
|
||||
>
|
||||
{
|
||||
};
|
||||
@@ -150,14 +147,14 @@ template< typename X, typename U1,<em>...</em> typename U<em>n</em> > stru
|
||||
{
|
||||
};
|
||||
</pre>
|
||||
<p>if <tt class="literal"><span class="pre">f</span></tt> or <tt class="literal"><span class="pre">a</span></tt><em>k</em> is a <a class="reference" href="./terminology.html#bind-expression">bind expression</a> or a <a class="reference" href="./placeholders.html">placeholder</a>, and</p>
|
||||
<p>if <tt class="literal"><span class="pre">f</span></tt> or <tt class="literal"><span class="pre">a</span></tt><em>k</em> is a <a class="reference internal" href="./terminology.html#bind-expression">bind expression</a> or a <a class="reference internal" href="./placeholders.html#placeholder">placeholder</a>, and</p>
|
||||
<pre class="literal-block">
|
||||
template< typename X, typename U1,<em>...</em> typename U<em>n</em> > struct h<em>k</em>
|
||||
{
|
||||
typedef X type;
|
||||
};
|
||||
</pre>
|
||||
<p class="last">otherwise. [<em>Note:</em> Every <tt class="literal"><span class="pre">n</span></tt>th appearance of the <a class="reference" href="./placeholders.html">unnamed placeholder</a>
|
||||
<p class="last">otherwise. [<em>Note:</em> Every <tt class="literal"><span class="pre">n</span></tt>th appearance of the <a class="reference internal" href="./placeholders.html">unnamed placeholder</a>
|
||||
in the <tt class="literal"><span class="pre"><a href="./bind.html" class="identifier">bind</a><f,a1,...an></span></tt> specialization is replaced with the corresponding
|
||||
numbered placeholder <tt class="literal"><span class="pre">_</span></tt><em>n</em> — <em>end note</em>]</p>
|
||||
</td>
|
||||
@@ -165,7 +162,7 @@ numbered placeholder <tt class="literal"><span class="pre">_</span></tt><em>n</e
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="bind-example">
|
||||
<div class="section" id="id936">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
struct f1
|
||||
@@ -185,26 +182,26 @@ struct f5
|
||||
};
|
||||
};
|
||||
|
||||
typedef <a href="./apply-wrap.html" class="identifier">apply_wrap</a><tt class="literal"><span class="pre">1</span></tt><
|
||||
<a href="./bind.html" class="identifier">bind</a><tt class="literal"><span class="pre">1</span></tt><f1,_1>
|
||||
, int
|
||||
typedef <a href="./apply-wrap.html" class="identifier">apply_wrap</a><tt class="literal"><span class="pre">1</span></tt><
|
||||
<a href="./bind.html" class="identifier">bind</a><tt class="literal"><span class="pre">1</span></tt><f1,<a href="./placeholders.html" class="identifier">_1</a>>
|
||||
, int
|
||||
>::type r11;
|
||||
|
||||
typedef <a href="./apply-wrap.html" class="identifier">apply_wrap</a><tt class="literal"><span class="pre">5</span></tt><
|
||||
<a href="./bind.html" class="identifier">bind</a><tt class="literal"><span class="pre">1</span></tt><f1,_5>
|
||||
, void,void,void,void,int
|
||||
typedef <a href="./apply-wrap.html" class="identifier">apply_wrap</a><tt class="literal"><span class="pre">5</span></tt><
|
||||
<a href="./bind.html" class="identifier">bind</a><tt class="literal"><span class="pre">1</span></tt><f1,<a href="./placeholders.html" class="identifier">_5</a>>
|
||||
, void,void,void,void,int
|
||||
>::type r12;
|
||||
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( is_same<r11,int> ));
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( is_same<r12,int> ));
|
||||
|
||||
typedef <a href="./apply-wrap.html" class="identifier">apply_wrap</a><tt class="literal"><span class="pre">5</span></tt><
|
||||
<a href="./bind.html" class="identifier">bind</a><tt class="literal"><span class="pre">5</span></tt><f5,_1,_2,_3,_4,_5>
|
||||
, void,void,void,void,int
|
||||
typedef <a href="./apply-wrap.html" class="identifier">apply_wrap</a><tt class="literal"><span class="pre">5</span></tt><
|
||||
<a href="./bind.html" class="identifier">bind</a><tt class="literal"><span class="pre">5</span></tt><f5,<a href="./placeholders.html" class="identifier">_1</a>,<a href="./placeholders.html" class="identifier">_2</a>,<a href="./placeholders.html" class="identifier">_3</a>,<a href="./placeholders.html" class="identifier">_4</a>,<a href="./placeholders.html" class="identifier">_5</a>>
|
||||
, void,void,void,void,int
|
||||
>::type r51;
|
||||
|
||||
typedef <a href="./apply-wrap.html" class="identifier">apply_wrap</a><tt class="literal"><span class="pre">5</span></tt><
|
||||
<a href="./bind.html" class="identifier">bind</a><tt class="literal"><span class="pre">5</span></tt><f5,_5,_4,_3,_2,_1>
|
||||
<a href="./bind.html" class="identifier">bind</a><tt class="literal"><span class="pre">5</span></tt><f5,<a href="./placeholders.html" class="identifier">_5</a>,<a href="./placeholders.html" class="identifier">_4</a>,<a href="./placeholders.html" class="identifier">_3</a>,<a href="./placeholders.html" class="identifier">_2</a>,<a href="./placeholders.html" class="identifier">_1</a>>
|
||||
, int,void,void,void,void
|
||||
>::type r52;
|
||||
|
||||
@@ -212,16 +209,17 @@ typedef <a href="./apply-wrap.html" class="identifier">apply_wrap</a><tt class="
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( is_same<r52,int> ));
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="bind-see-also">
|
||||
<div class="section" id="id937">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./composition-and-argument.html">Composition and Argument Binding</a>, <a class="reference" href="./invocation.html">invocation</a>, <a class="reference" href="./placeholders.html">Placeholders</a>, <a class="refentry reference" href="./lambda.html"><tt class="refentry literal"><span class="pre">lambda</span></tt></a>, <a class="refentry reference" href="./quote.html"><tt class="refentry literal"><span class="pre">quote</span></tt></a>,
|
||||
<a class="refentry reference" href="./protect.html"><tt class="refentry literal"><span class="pre">protect</span></tt></a>, <a class="refentry reference" href="./apply.html"><tt class="refentry literal"><span class="pre">apply</span></tt></a>, <a class="refentry reference" href="./apply-wrap.html"><tt class="refentry literal"><span class="pre">apply_wrap</span></tt></a></p>
|
||||
<!-- modtime: November 13, 2004 01:59:44 +0000 -->
|
||||
<p><a class="reference internal" href="./composition-and-argument-binding.html">Composition and Argument Binding</a>, <a class="reference internal" href="./invocation.html">invocation</a>, <a class="reference internal" href="./placeholders.html">Placeholders</a>, <a class="reference internal" href="./lambda.html">lambda</a>, <a class="reference internal" href="./quote.html">quote</a>,
|
||||
<a class="reference internal" href="./protect.html">protect</a>, <a class="reference internal" href="./apply.html">apply</a>, <a class="reference internal" href="./apply-wrap.html">apply_wrap</a></p>
|
||||
<!-- Metafunctions/Composition and Argument Binding//quote |40 -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./lambda.html" class="navigation-link">Prev</a> <a href="./quote.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./lambda.html" class="navigation-link">Back</a> <a href="./quote.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./composition-and-argument.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./lambda.html" class="navigation-link">Prev</a> <a href="./quote.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./lambda.html" class="navigation-link">Back</a> <a href="./quote.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./composition-and-argument-binding.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+34
-34
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: bitand_</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,8 +12,8 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./metafunctions.html" class="navigation-link">Metafunctions</a> / <a href="./bitwise-operations.html" class="navigation-link">Bitwise Operations</a> / <a href="./bitand.html" class="navigation-link">bitand_</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="bitand">
|
||||
<h1><a class="toc-backref" href="./bitwise-operations.html#id480" name="bitand">bitand_</a></h1>
|
||||
<div class="section" id="bitand-synopsis">
|
||||
<h1><a class="toc-backref" href="./bitwise-operations.html#id1554">bitand_</a></h1>
|
||||
<div class="section" id="id1089">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
@@ -32,58 +29,59 @@ struct <a href="./bitand.html" class="identifier">bitand_</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="bitand-description">
|
||||
<div class="section" id="id1090">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Returns the result of <em>bitwise and</em> (<tt class="literal"><span class="pre">&</span></tt>) operation of its arguments.</p>
|
||||
</div>
|
||||
<div class="section" id="bitand-header">
|
||||
<div class="section" id="id1091">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/bitand.hpp" class="header">boost/mpl/bitand.hpp</a>>
|
||||
#include <<a href="../../../../boost/mpl/bitwise.hpp" class="header">boost/mpl/bitwise.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="bitand-model-of">
|
||||
<div class="section" id="id1092">
|
||||
<h3><a class="subsection-title" href="#model-of" name="model-of">Model of</a></h3>
|
||||
<p><a class="reference" href="./numeric-metafunction.html">Numeric Metafunction</a></p>
|
||||
<p><a class="reference internal" href="./numeric-metafunction.html">Numeric Metafunction</a></p>
|
||||
</div>
|
||||
<div class="section" id="bitand-parameters">
|
||||
<div class="section" id="id1093">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="17%" />
|
||||
<col width="30%" />
|
||||
<col width="53%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">T1</span></tt>, <tt class="literal"><span class="pre">T2</span></tt>,... <tt class="literal"><span class="pre">Tn</span></tt></td>
|
||||
<td><a class="reference" href="./integral-constant.html">Integral Constant</a></td>
|
||||
<td><a class="reference internal" href="./integral-constant.html">Integral Constant</a></td>
|
||||
<td>Operation's arguments.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p>[<em>Note:</em> The requirements listed in this specification
|
||||
are the ones imposed by the default implementation. See <a class="reference" href="./numeric-metafunction.html">Numeric Metafunction</a> concept
|
||||
for the details on how to provide an implementation for a user-defined numeric type
|
||||
that does not satisfy the <a class="reference" href="./integral-constant.html">Integral Constant</a> requirements. — <em>end note</em>]</p>
|
||||
are the ones imposed by the default implementation. See <a class="reference internal" href="./numeric-metafunction.html">Numeric Metafunction</a> concept
|
||||
for the details on how to provide an implementation for a user-defined numeric type
|
||||
that does not satisfy the <a class="reference internal" href="./integral-constant.html">Integral Constant</a> requirements. — <em>end note</em>]</p>
|
||||
</div>
|
||||
<div class="section" id="bitand-expression-semantics">
|
||||
<div class="section" id="id1094">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For any <a class="reference" href="./integral-constant.html">Integral Constant</a>s <em>c</em><sub>1</sub>,<em>c</em><sub>2</sub>,... <em>c</em><sub>n</sub>:</p>
|
||||
<p>For any <a class="reference internal" href="./integral-constant.html">Integral Constant</a>s <em>c</em><sub>1</sub>,<em>c</em><sub>2</sub>,... <em>c</em><sub>n</sub>:</p>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./bitand.html" class="identifier">bitand_</a><c1,<em>...</em>c<em>n</em>>::type r;
|
||||
typedef <a href="./bitand.html" class="identifier">bitand_</a><c1,<em>...</em>c<em>n</em>>::type r;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference" href="./integral-constant.html">Integral Constant</a>.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><a class="reference internal" href="./integral-constant.html">Integral Constant</a>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Equivalent to</p>
|
||||
<pre class="last literal-block">
|
||||
@@ -91,8 +89,8 @@ typedef <a href="./integral-c.html" class="identifier">integral_c</a><
|
||||
typeof(c1::value & c2::value)
|
||||
, ( c1::value & c2::value )
|
||||
> c;
|
||||
|
||||
typedef <a href="./bitand.html" class="identifier">bitand_</a><c,c3,<em>...</em>c<em>n</em>>::type r;
|
||||
|
||||
typedef <a href="./bitand.html" class="identifier">bitand_</a><c,c3,<em>...</em>c<em>n</em>>::type r;
|
||||
</pre>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -102,11 +100,12 @@ typedef <a href="./bitand.html" class="identifier">bitand_</a><c,c3,<em>...</
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./bitand.html" class="identifier">bitand_</a><c1,<em>...</em>c<em>n</em>> r;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference" href="./integral-constant.html">Integral Constant</a>.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><a class="reference internal" href="./integral-constant.html">Integral Constant</a>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Equivalent to</p>
|
||||
<pre class="last literal-block">
|
||||
@@ -117,11 +116,11 @@ struct r : <a href="./bitand.html" class="identifier">bitand_</a><c1,<em>...<
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="bitand-complexity">
|
||||
<div class="section" id="id1095">
|
||||
<h3><a class="subsection-title" href="#complexity" name="complexity">Complexity</a></h3>
|
||||
<p>Amortized constant time.</p>
|
||||
</div>
|
||||
<div class="section" id="bitand-example">
|
||||
<div class="section" id="id1096">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./integral-c.html" class="identifier">integral_c</a><unsigned,0> u0;
|
||||
@@ -138,15 +137,16 @@ typedef <a href="./integral-c.html" class="identifier">integral_c</a><unsigne
|
||||
<a href="./assert-relation.html" class="identifier">BOOST_MPL_ASSERT_RELATION</a>( (<a href="./bitand.html" class="identifier">bitand_</a><u8,uffffffff>::value), ==, 8 );
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="bitand-see-also">
|
||||
<div class="section" id="id1097">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./bitwise-operations.html">Bitwise Operations</a>, <a class="reference" href="./numeric-metafunction.html">Numeric Metafunction</a>, <a class="refentry reference" href="./numeric-cast.html"><tt class="refentry literal"><span class="pre">numeric_cast</span></tt></a>, <a class="refentry reference" href="./bitor.html"><tt class="refentry literal"><span class="pre">bitor_</span></tt></a>, <a class="refentry reference" href="./bitxor.html"><tt class="refentry literal"><span class="pre">bitxor_</span></tt></a>, <a class="refentry reference" href="./shift-left.html"><tt class="refentry literal"><span class="pre">shift_left</span></tt></a></p>
|
||||
<!-- modtime: November 10, 2004 04:44:32 +0000 -->
|
||||
<p><a class="reference internal" href="./bitwise-operations.html">Bitwise Operations</a>, <a class="reference internal" href="./numeric-metafunction.html">Numeric Metafunction</a>, <a class="reference internal" href="./numeric-cast.html">numeric_cast</a>, <a class="reference internal" href="./bitor.html">bitor_</a>, <a class="reference internal" href="./bitxor.html">bitxor_</a>, <a class="reference internal" href="./shift-left.html">shift_left</a></p>
|
||||
<!-- Metafunctions/Bitwise Operations//bitor_ -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./bitwise-operations.html" class="navigation-link">Prev</a> <a href="./bitor.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group">Back <a href="./bitor.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./bitwise-operations.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+34
-34
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: bitor_</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,8 +12,8 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./metafunctions.html" class="navigation-link">Metafunctions</a> / <a href="./bitwise-operations.html" class="navigation-link">Bitwise Operations</a> / <a href="./bitor.html" class="navigation-link">bitor_</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="bitor">
|
||||
<h1><a class="toc-backref" href="./bitwise-operations.html#id481" name="bitor">bitor_</a></h1>
|
||||
<div class="section" id="bitor-synopsis">
|
||||
<h1><a class="toc-backref" href="./bitwise-operations.html#id1555">bitor_</a></h1>
|
||||
<div class="section" id="id1098">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
@@ -32,58 +29,59 @@ struct <a href="./bitor.html" class="identifier">bitor_</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="bitor-description">
|
||||
<div class="section" id="id1099">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Returns the result of <em>bitwise or</em> (<tt class="literal"><span class="pre">|</span></tt>) operation of its arguments.</p>
|
||||
</div>
|
||||
<div class="section" id="bitor-header">
|
||||
<div class="section" id="id1100">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/bitor.hpp" class="header">boost/mpl/bitor.hpp</a>>
|
||||
#include <<a href="../../../../boost/mpl/bitwise.hpp" class="header">boost/mpl/bitwise.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="bitor-model-of">
|
||||
<div class="section" id="id1101">
|
||||
<h3><a class="subsection-title" href="#model-of" name="model-of">Model of</a></h3>
|
||||
<p><a class="reference" href="./numeric-metafunction.html">Numeric Metafunction</a></p>
|
||||
<p><a class="reference internal" href="./numeric-metafunction.html">Numeric Metafunction</a></p>
|
||||
</div>
|
||||
<div class="section" id="bitor-parameters">
|
||||
<div class="section" id="id1102">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="17%" />
|
||||
<col width="30%" />
|
||||
<col width="53%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">T1</span></tt>, <tt class="literal"><span class="pre">T2</span></tt>,... <tt class="literal"><span class="pre">Tn</span></tt></td>
|
||||
<td><a class="reference" href="./integral-constant.html">Integral Constant</a></td>
|
||||
<td><a class="reference internal" href="./integral-constant.html">Integral Constant</a></td>
|
||||
<td>Operation's arguments.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p>[<em>Note:</em> The requirements listed in this specification
|
||||
are the ones imposed by the default implementation. See <a class="reference" href="./numeric-metafunction.html">Numeric Metafunction</a> concept
|
||||
for the details on how to provide an implementation for a user-defined numeric type
|
||||
that does not satisfy the <a class="reference" href="./integral-constant.html">Integral Constant</a> requirements. — <em>end note</em>]</p>
|
||||
are the ones imposed by the default implementation. See <a class="reference internal" href="./numeric-metafunction.html">Numeric Metafunction</a> concept
|
||||
for the details on how to provide an implementation for a user-defined numeric type
|
||||
that does not satisfy the <a class="reference internal" href="./integral-constant.html">Integral Constant</a> requirements. — <em>end note</em>]</p>
|
||||
</div>
|
||||
<div class="section" id="bitor-expression-semantics">
|
||||
<div class="section" id="id1103">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For any <a class="reference" href="./integral-constant.html">Integral Constant</a>s <em>c</em><sub>1</sub>,<em>c</em><sub>2</sub>,... <em>c</em><sub>n</sub>:</p>
|
||||
<p>For any <a class="reference internal" href="./integral-constant.html">Integral Constant</a>s <em>c</em><sub>1</sub>,<em>c</em><sub>2</sub>,... <em>c</em><sub>n</sub>:</p>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./bitor.html" class="identifier">bitor_</a><c1,<em>...</em>c<em>n</em>>::type r;
|
||||
typedef <a href="./bitor.html" class="identifier">bitor_</a><c1,<em>...</em>c<em>n</em>>::type r;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference" href="./integral-constant.html">Integral Constant</a>.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><a class="reference internal" href="./integral-constant.html">Integral Constant</a>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Equivalent to</p>
|
||||
<pre class="last literal-block">
|
||||
@@ -91,8 +89,8 @@ typedef <a href="./integral-c.html" class="identifier">integral_c</a><
|
||||
typeof(c1::value | c2::value)
|
||||
, ( c1::value | c2::value )
|
||||
> c;
|
||||
|
||||
typedef <a href="./bitor.html" class="identifier">bitor_</a><c,c3,<em>...</em>c<em>n</em>>::type r;
|
||||
|
||||
typedef <a href="./bitor.html" class="identifier">bitor_</a><c,c3,<em>...</em>c<em>n</em>>::type r;
|
||||
</pre>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -102,11 +100,12 @@ typedef <a href="./bitor.html" class="identifier">bitor_</a><c,c3,<em>...</em
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./bitor.html" class="identifier">bitor_</a><c1,<em>...</em>c<em>n</em>> r;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference" href="./integral-constant.html">Integral Constant</a>.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><a class="reference internal" href="./integral-constant.html">Integral Constant</a>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Equivalent to</p>
|
||||
<pre class="last literal-block">
|
||||
@@ -117,11 +116,11 @@ struct r : <a href="./bitor.html" class="identifier">bitor_</a><c1,<em>...</e
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="bitor-complexity">
|
||||
<div class="section" id="id1104">
|
||||
<h3><a class="subsection-title" href="#complexity" name="complexity">Complexity</a></h3>
|
||||
<p>Amortized constant time.</p>
|
||||
</div>
|
||||
<div class="section" id="bitor-example">
|
||||
<div class="section" id="id1105">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./integral-c.html" class="identifier">integral_c</a><unsigned,0> u0;
|
||||
@@ -138,15 +137,16 @@ typedef <a href="./integral-c.html" class="identifier">integral_c</a><unsigne
|
||||
<a href="./assert-relation.html" class="identifier">BOOST_MPL_ASSERT_RELATION</a>( (<a href="./bitor.html" class="identifier">bitor_</a><u8,uffffffff>::value), ==, 0xffffffff );
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="bitor-see-also">
|
||||
<div class="section" id="id1106">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./bitwise-operations.html">Bitwise Operations</a>, <a class="reference" href="./numeric-metafunction.html">Numeric Metafunction</a>, <a class="refentry reference" href="./numeric-cast.html"><tt class="refentry literal"><span class="pre">numeric_cast</span></tt></a>, <a class="refentry reference" href="./bitand.html"><tt class="refentry literal"><span class="pre">bitand_</span></tt></a>, <a class="refentry reference" href="./bitxor.html"><tt class="refentry literal"><span class="pre">bitxor_</span></tt></a>, <a class="refentry reference" href="./shift-left.html"><tt class="refentry literal"><span class="pre">shift_left</span></tt></a></p>
|
||||
<!-- modtime: November 10, 2004 05:04:32 +0000 -->
|
||||
<p><a class="reference internal" href="./bitwise-operations.html">Bitwise Operations</a>, <a class="reference internal" href="./numeric-metafunction.html">Numeric Metafunction</a>, <a class="reference internal" href="./numeric-cast.html">numeric_cast</a>, <a class="reference internal" href="./bitand.html">bitand_</a>, <a class="reference internal" href="./bitxor.html">bitxor_</a>, <a class="reference internal" href="./shift-left.html">shift_left</a></p>
|
||||
<!-- Metafunctions/Bitwise Operations//bitxor_ -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./bitand.html" class="navigation-link">Prev</a> <a href="./bitxor.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./bitand.html" class="navigation-link">Back</a> <a href="./bitxor.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./bitwise-operations.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: Bitwise Operations</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,19 +12,20 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./metafunctions.html" class="navigation-link">Metafunctions</a> / <a href="./bitwise-operations.html" class="navigation-link">Bitwise Operations</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="bitwise-operations">
|
||||
<h1><a class="toc-backref" href="./metafunctions.html#id479" name="bitwise-operations">Bitwise Operations</a></h1>
|
||||
<a class="target" id="id248" name="id248"></a><!-- modtime: November 08, 2004 08:24:29 +0000 -->
|
||||
<!-- Metafunctions/Bitwise Operations//bitand_ -->
|
||||
<h1><a class="toc-backref" href="./metafunctions.html#id1553">Bitwise Operations</a></h1>
|
||||
<span class="target" id="label-metafunctions-bitwise-operations"></span><!-- Metafunctions/Bitwise Operations//bitand_ -->
|
||||
<ul class="toc simple" id="outline">
|
||||
<li><a class="reference" href="./bitand.html" id="id480" name="id480">bitand_</a></li>
|
||||
<li><a class="reference" href="./bitor.html" id="id481" name="id481">bitor_</a></li>
|
||||
<li><a class="reference" href="./bitxor.html" id="id482" name="id482">bitxor_</a></li>
|
||||
<li><a class="reference" href="./shift-left.html" id="id483" name="id483">shift_left</a></li>
|
||||
<li><a class="reference" href="./shift-right.html" id="id484" name="id484">shift_right</a></li>
|
||||
<li><a class="reference internal" href="./bitand.html" id="id1554">bitand_</a></li>
|
||||
<li><a class="reference internal" href="./bitor.html" id="id1555">bitor_</a></li>
|
||||
<li><a class="reference internal" href="./bitxor.html" id="id1556">bitxor_</a></li>
|
||||
<li><a class="reference internal" href="./shift-left.html" id="id1557">shift_left</a></li>
|
||||
<li><a class="reference internal" href="./shift-right.html" id="id1558">shift_right</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./not.html" class="navigation-link">Prev</a> <a href="./bitand.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./logical-operations.html" class="navigation-link">Back</a> <a href="./trivial.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./metafunctions.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+34
-34
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: bitxor_</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,8 +12,8 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./metafunctions.html" class="navigation-link">Metafunctions</a> / <a href="./bitwise-operations.html" class="navigation-link">Bitwise Operations</a> / <a href="./bitxor.html" class="navigation-link">bitxor_</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="bitxor">
|
||||
<h1><a class="toc-backref" href="./bitwise-operations.html#id482" name="bitxor">bitxor_</a></h1>
|
||||
<div class="section" id="bitxor-synopsis">
|
||||
<h1><a class="toc-backref" href="./bitwise-operations.html#id1556">bitxor_</a></h1>
|
||||
<div class="section" id="id1107">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
@@ -32,58 +29,59 @@ struct <a href="./bitxor.html" class="identifier">bitxor_</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="bitxor-description">
|
||||
<div class="section" id="id1108">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Returns the result of <em>bitwise xor</em> (<tt class="literal"><span class="pre">^</span></tt>) operation of its arguments.</p>
|
||||
</div>
|
||||
<div class="section" id="bitxor-header">
|
||||
<div class="section" id="id1109">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/bitxor.hpp" class="header">boost/mpl/bitxor.hpp</a>>
|
||||
#include <<a href="../../../../boost/mpl/bitwise.hpp" class="header">boost/mpl/bitwise.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="bitxor-model-of">
|
||||
<div class="section" id="id1110">
|
||||
<h3><a class="subsection-title" href="#model-of" name="model-of">Model of</a></h3>
|
||||
<p><a class="reference" href="./numeric-metafunction.html">Numeric Metafunction</a></p>
|
||||
<p><a class="reference internal" href="./numeric-metafunction.html">Numeric Metafunction</a></p>
|
||||
</div>
|
||||
<div class="section" id="bitxor-parameters">
|
||||
<div class="section" id="id1111">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="17%" />
|
||||
<col width="30%" />
|
||||
<col width="53%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">T1</span></tt>, <tt class="literal"><span class="pre">T2</span></tt>,... <tt class="literal"><span class="pre">Tn</span></tt></td>
|
||||
<td><a class="reference" href="./integral-constant.html">Integral Constant</a></td>
|
||||
<td><a class="reference internal" href="./integral-constant.html">Integral Constant</a></td>
|
||||
<td>Operation's arguments.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p>[<em>Note:</em> The requirements listed in this specification
|
||||
are the ones imposed by the default implementation. See <a class="reference" href="./numeric-metafunction.html">Numeric Metafunction</a> concept
|
||||
for the details on how to provide an implementation for a user-defined numeric type
|
||||
that does not satisfy the <a class="reference" href="./integral-constant.html">Integral Constant</a> requirements. — <em>end note</em>]</p>
|
||||
are the ones imposed by the default implementation. See <a class="reference internal" href="./numeric-metafunction.html">Numeric Metafunction</a> concept
|
||||
for the details on how to provide an implementation for a user-defined numeric type
|
||||
that does not satisfy the <a class="reference internal" href="./integral-constant.html">Integral Constant</a> requirements. — <em>end note</em>]</p>
|
||||
</div>
|
||||
<div class="section" id="bitxor-expression-semantics">
|
||||
<div class="section" id="id1112">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For any <a class="reference" href="./integral-constant.html">Integral Constant</a>s <em>c</em><sub>1</sub>,<em>c</em><sub>2</sub>,... <em>c</em><sub>n</sub>:</p>
|
||||
<p>For any <a class="reference internal" href="./integral-constant.html">Integral Constant</a>s <em>c</em><sub>1</sub>,<em>c</em><sub>2</sub>,... <em>c</em><sub>n</sub>:</p>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./bitxor.html" class="identifier">bitxor_</a><c1,<em>...</em>c<em>n</em>>::type r;
|
||||
typedef <a href="./bitxor.html" class="identifier">bitxor_</a><c1,<em>...</em>c<em>n</em>>::type r;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference" href="./integral-constant.html">Integral Constant</a>.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><a class="reference internal" href="./integral-constant.html">Integral Constant</a>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Equivalent to</p>
|
||||
<pre class="last literal-block">
|
||||
@@ -91,8 +89,8 @@ typedef <a href="./integral-c.html" class="identifier">integral_c</a><
|
||||
typeof(c1::value ^ c2::value)
|
||||
, ( c1::value ^ c2::value )
|
||||
> c;
|
||||
|
||||
typedef <a href="./bitxor.html" class="identifier">bitxor_</a><c,c3,<em>...</em>c<em>n</em>>::type r;
|
||||
|
||||
typedef <a href="./bitxor.html" class="identifier">bitxor_</a><c,c3,<em>...</em>c<em>n</em>>::type r;
|
||||
</pre>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -102,11 +100,12 @@ typedef <a href="./bitxor.html" class="identifier">bitxor_</a><c,c3,<em>...</
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./bitxor.html" class="identifier">bitxor_</a><c1,<em>...</em>c<em>n</em>> r;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference" href="./integral-constant.html">Integral Constant</a>.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><a class="reference internal" href="./integral-constant.html">Integral Constant</a>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Equivalent to</p>
|
||||
<pre class="last literal-block">
|
||||
@@ -117,11 +116,11 @@ struct r : <a href="./bitxor.html" class="identifier">bitxor_</a><c1,<em>...<
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="bitxor-complexity">
|
||||
<div class="section" id="id1113">
|
||||
<h3><a class="subsection-title" href="#complexity" name="complexity">Complexity</a></h3>
|
||||
<p>Amortized constant time.</p>
|
||||
</div>
|
||||
<div class="section" id="bitxor-example">
|
||||
<div class="section" id="id1114">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./integral-c.html" class="identifier">integral_c</a><unsigned,0> u0;
|
||||
@@ -139,15 +138,16 @@ typedef <a href="./integral-c.html" class="identifier">integral_c</a><unsigne
|
||||
<a href="./assert-relation.html" class="identifier">BOOST_MPL_ASSERT_RELATION</a>( (<a href="./bitxor.html" class="identifier">bitxor_</a><u8,uffffffff>::value), ==, 0xffffffff ^ 8 );
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="bitxor-see-also">
|
||||
<div class="section" id="id1115">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./bitwise-operations.html">Bitwise Operations</a>, <a class="reference" href="./numeric-metafunction.html">Numeric Metafunction</a>, <a class="refentry reference" href="./numeric-cast.html"><tt class="refentry literal"><span class="pre">numeric_cast</span></tt></a>, <a class="refentry reference" href="./bitand.html"><tt class="refentry literal"><span class="pre">bitand_</span></tt></a>, <a class="refentry reference" href="./bitor.html"><tt class="refentry literal"><span class="pre">bitor_</span></tt></a>, <a class="refentry reference" href="./shift-left.html"><tt class="refentry literal"><span class="pre">shift_left</span></tt></a></p>
|
||||
<!-- modtime: November 13, 2004 02:03:30 +0000 -->
|
||||
<p><a class="reference internal" href="./bitwise-operations.html">Bitwise Operations</a>, <a class="reference internal" href="./numeric-metafunction.html">Numeric Metafunction</a>, <a class="reference internal" href="./numeric-cast.html">numeric_cast</a>, <a class="reference internal" href="./bitand.html">bitand_</a>, <a class="reference internal" href="./bitor.html">bitor_</a>, <a class="reference internal" href="./shift-left.html">shift_left</a></p>
|
||||
<!-- Metafunctions/Bitwise Operations//shift_left -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./bitor.html" class="navigation-link">Prev</a> <a href="./shift-left.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./bitor.html" class="navigation-link">Back</a> <a href="./shift-left.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./bitwise-operations.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+28
-30
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: bool_</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,8 +12,8 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./data-types.html" class="navigation-link">Data Types</a> / <a href="./numeric.html" class="navigation-link">Numeric</a> / <a href="./bool.html" class="navigation-link">bool_</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="bool">
|
||||
<h1><a class="toc-backref" href="./numeric.html#id500" name="bool">bool_</a></h1>
|
||||
<div class="section" id="bool-synopsis">
|
||||
<h1><a class="toc-backref" href="./numeric.html#id1576">bool_</a></h1>
|
||||
<div class="section" id="id1222">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
@@ -28,36 +25,36 @@ struct <a href="./bool.html" class="identifier">bool_</a>
|
||||
// ...
|
||||
};
|
||||
|
||||
typedef <a href="./bool.html" class="identifier">bool_</a><true> true_;
|
||||
typedef <a href="./bool.html" class="identifier">bool_</a><false> false_;
|
||||
typedef <a href="./bool.html" class="identifier">bool_</a><true> <a href="./bool.html" class="identifier">true_</a>;
|
||||
typedef <a href="./bool.html" class="identifier">bool_</a><false> <a href="./bool.html" class="identifier">false_</a>;
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="bool-description">
|
||||
<div class="section" id="id1223">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>A boolean <a class="reference" href="./integral-constant.html">Integral Constant</a> wrapper.</p>
|
||||
<p>A boolean <a class="reference internal" href="./integral-constant.html">Integral Constant</a> wrapper.</p>
|
||||
</div>
|
||||
<div class="section" id="bool-header">
|
||||
<div class="section" id="id1224">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/bool.hpp" class="header">boost/mpl/bool.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="bool-model-of">
|
||||
<div class="section" id="id1225">
|
||||
<h3><a class="subsection-title" href="#model-of" name="model-of">Model of</a></h3>
|
||||
<p><a class="reference" href="./integral-constant.html">Integral Constant</a></p>
|
||||
<p><a class="reference internal" href="./integral-constant.html">Integral Constant</a></p>
|
||||
</div>
|
||||
<div class="section" id="bool-parameters">
|
||||
<div class="section" id="id1226">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="21%" />
|
||||
<col width="42%" />
|
||||
<col width="37%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
@@ -68,48 +65,49 @@ typedef <a href="./bool.html" class="identifier">bool_</a><false> false_;
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="bool-expression-semantics">
|
||||
<div class="section" id="id1227">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>The semantics of an expression are defined only
|
||||
where they differ from, or are not defined in <a class="reference" href="./integral-constant.html">Integral Constant</a>.</p>
|
||||
where they differ from, or are not defined in <a class="reference internal" href="./integral-constant.html">Integral Constant</a>.</p>
|
||||
<p>For arbitrary integral constant <tt class="literal"><span class="pre">c</span></tt>:</p>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="24%" />
|
||||
<col width="76%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Expression</th>
|
||||
<th>Semantics</th>
|
||||
<tr><th class="head">Expression</th>
|
||||
<th class="head">Semantics</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./bool.html" class="identifier">bool_</a><c></span></tt></td>
|
||||
<td>An <a class="reference" href="./integral-constant.html">Integral Constant</a> <tt class="literal"><span class="pre">x</span></tt> such that <tt class="literal"><span class="pre">x::value</span> <span class="pre">==</span> <span class="pre">c</span></tt>
|
||||
<td>An <a class="reference internal" href="./integral-constant.html">Integral Constant</a> <tt class="literal"><span class="pre">x</span></tt> such that <tt class="literal"><span class="pre">x::value</span> <span class="pre">==</span> <span class="pre">c</span></tt>
|
||||
and <tt class="literal"><span class="pre">x::<a href="./value-type.html" class="identifier">value_type</a></span></tt> is identical to <tt class="literal"><span class="pre">bool</span></tt>.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="bool-example">
|
||||
<div class="section" id="id1228">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( is_same< <a href="./bool.html" class="identifier">bool_</a><true>::<a href="./value-type.html" class="identifier">value_type</a>, bool > ));
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( is_same< <a href="./bool.html" class="identifier">bool_</a><true>, <a class="reference" href="./bool.html"><tt class="literal"><span class="pre">true_</span></tt></a> > )); }
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( is_same< <a href="./bool.html" class="identifier">bool_</a><true>, <a href="./bool.html" class="identifier">true_</a> > )); }
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( is_same< <a href="./bool.html" class="identifier">bool_</a><true>::type, <a href="./bool.html" class="identifier">bool_</a><true> > ));
|
||||
<a href="./assert-relation.html" class="identifier">BOOST_MPL_ASSERT_RELATION</a>( <a href="./bool.html" class="identifier">bool_</a><true>::value, ==, true );
|
||||
assert( <a href="./bool.html" class="identifier">bool_</a><true>() == true );
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="bool-see-also">
|
||||
<div class="section" id="id1229">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./data-types.html">Data Types</a>, <a class="reference" href="./integral-constant.html">Integral Constant</a>, <a class="refentry reference" href="./int.html"><tt class="refentry literal"><span class="pre">int_</span></tt></a>, <a class="refentry reference" href="./long.html"><tt class="refentry literal"><span class="pre">long_</span></tt></a>, <a class="refentry reference" href="./integral-c.html"><tt class="refentry literal"><span class="pre">integral_c</span></tt></a></p>
|
||||
<!-- modtime: November 10, 2004 04:44:19 +0000 -->
|
||||
<p><a class="reference internal" href="./data-types.html">Data Types</a>, <a class="reference internal" href="./integral-constant.html">Integral Constant</a>, <a class="reference internal" href="./int.html">int_</a>, <a class="reference internal" href="./long.html">long_</a>, <a class="reference internal" href="./integral-c.html">integral_c</a></p>
|
||||
<!-- Data Types/Numeric//int_ |20 -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./numeric.html" class="navigation-link">Prev</a> <a href="./int.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group">Back <a href="./int.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./numeric.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+9
-10
@@ -1,28 +1,27 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: Broken Compiler Workarounds</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
<body class="docframe refmanual">
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./limit-unrolling.html" class="navigation-link">Prev</a> <a href="./aux-lambda-support.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./configuration.html" class="navigation-link">Back</a> Along</span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./macros.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./macros.html" class="navigation-link">Macros</a> / <a href="./broken-compiler.html" class="navigation-link">Broken Compiler Workarounds</a></td>
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./macros.html" class="navigation-link">Macros</a> / <a href="./broken-compiler-workarounds.html" class="navigation-link">Broken Compiler Workarounds</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="broken-compiler">
|
||||
<h1><a class="toc-backref" href="./macros.html#id527" name="broken-compiler">Broken Compiler Workarounds</a></h1>
|
||||
<a class="target" id="label-macros-broken" name="label-macros-broken"></a><!-- Macros/Broken Compiler Workarounds//BOOST_MPL_AUX_LAMBDA_SUPPORT -->
|
||||
<div class="section" id="broken-compiler-workarounds">
|
||||
<h1><a class="toc-backref" href="./macros.html#id1608">Broken Compiler Workarounds</a></h1>
|
||||
<!-- Macros/Broken Compiler Workarounds//BOOST_MPL_AUX_LAMBDA_SUPPORT -->
|
||||
<ul class="toc simple" id="outline">
|
||||
<li><a class="reference" href="./aux-lambda-support.html" id="id528" name="id528">BOOST_MPL_AUX_LAMBDA_SUPPORT</a></li>
|
||||
<li><a class="reference internal" href="./aux-lambda-support.html" id="id1609">BOOST_MPL_AUX_LAMBDA_SUPPORT</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./limit-unrolling.html" class="navigation-link">Prev</a> <a href="./aux-lambda-support.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./configuration.html" class="navigation-link">Back</a> Along</span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./macros.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
@@ -0,0 +1,137 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: c_str</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
<body class="docframe refmanual">
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./string-operations.html" class="navigation-link">Prev</a> <a href="./miscellaneous.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group">Back Along</span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./string-operations.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./metafunctions.html" class="navigation-link">Metafunctions</a> / <a href="./string-operations.html" class="navigation-link">String Operations</a> / <a href="./c-str.html" class="navigation-link">c_str</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="c-str">
|
||||
<h1><a class="toc-backref" href="./string-operations.html#id1562">c_str</a></h1>
|
||||
<div class="section" id="id1137">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
typename Sequence
|
||||
>
|
||||
struct <a href="./c-str.html" class="identifier">c_str</a>
|
||||
{
|
||||
typedef <em>unspecified</em> type;
|
||||
static char const value[];
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="id1138">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p><tt class="literal"><span class="pre"><a href="./c-str.html" class="identifier">c_str</a></span></tt> converts the <a class="reference internal" href="./forward-sequence.html">Forward Sequence</a> of <a class="reference internal" href="./integral-constant.html">Integral Constant</a>s <tt class="literal"><span class="pre">Sequence</span></tt>
|
||||
into a null-terminated byte string containing an equivalent sequence.</p>
|
||||
</div>
|
||||
<div class="section" id="id1139">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/string.hpp" class="header">boost/mpl/string.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="id1140">
|
||||
<h3><a class="subsection-title" href="#model-of" name="model-of">Model of</a></h3>
|
||||
<p><a class="reference internal" href="./metafunction.html">Metafunction</a></p>
|
||||
</div>
|
||||
<div class="section" id="id1141">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="17%" />
|
||||
<col width="30%" />
|
||||
<col width="53%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">Sequence</span></tt></td>
|
||||
<td><a class="reference internal" href="./forward-sequence.html">Forward Sequence</a> of
|
||||
<a class="reference internal" href="./integral-constant.html">Integral Constant</a>s</td>
|
||||
<td>A sequence to be converted into a
|
||||
null-terminated byte string.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="id1142">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<div class="expression-semantics compound">
|
||||
<p class="compound-first">For any <a class="reference internal" href="./forward-sequence.html">Forward Sequence</a> of <a class="reference internal" href="./integral-constant.html">Integral Constant</a>s <tt class="literal"><span class="pre">s</span></tt>,</p>
|
||||
<pre class="compound-middle literal-block">
|
||||
<a href="./c-str.html" class="identifier">c_str</a><s>::value;
|
||||
</pre>
|
||||
<table class="compound-last docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first">A null-terminated byte string.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body"><p class="first"><tt class="literal"><span class="pre"><a href="./size.html" class="identifier">size</a><s>::value</span> <span class="pre"><=</span> <span class="pre">BOOST_MPL_STRING_MAX_LENGTH</span></tt>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Equivalent to</p>
|
||||
<pre class="last literal-block">
|
||||
char const value[] = {
|
||||
<a href="./at.html" class="identifier">at</a><s, 0>::type::value
|
||||
, ...
|
||||
, <a href="./at.html" class="identifier">at</a><s, <a href="./size.html" class="identifier">size</a><s>::value-1>::type::value
|
||||
, '\0'
|
||||
};
|
||||
</pre>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
<div class="section" id="id1143">
|
||||
<h3><a class="subsection-title" href="#complexity" name="complexity">Complexity</a></h3>
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="47%" />
|
||||
<col width="53%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th class="head">Sequence archetype</th>
|
||||
<th class="head">Complexity</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><a class="reference internal" href="./forward-sequence.html">Forward Sequence</a></td>
|
||||
<td>Linear.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="id1144">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./vector-c.html" class="identifier">vector_c</a><char,'h','e','l','l','o'> hello;
|
||||
assert( 0 == std::strcmp( <a href="./c-str.html" class="identifier">c_str</a><hello>::value, "hello" ) );
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="id1145">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference internal" href="./forward-sequence.html">Forward Sequence</a>, <a class="reference internal" href="./integral-constant.html">Integral Constant</a>, <a class="reference internal" href="./string.html">string</a></p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./string-operations.html" class="navigation-link">Prev</a> <a href="./miscellaneous.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group">Back Along</span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./string-operations.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2009 Eric Niebler</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
@@ -1,49 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: Concepts</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
<body class="docframe refmanual">
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./categorized-index.html" class="navigation-link">Prev</a> <a href="./components.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group">Back <a href="./components.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./categorized-index.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./categorized-index.html" class="navigation-link">Categorized Index</a> / <a href="./categorized-concepts.html" class="navigation-link">Concepts</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="categorized-concepts">
|
||||
<h1><a class="toc-backref" href="./categorized-index.html#id531" name="categorized-concepts">Concepts</a></h1>
|
||||
<ul class="simple">
|
||||
<li><a class="reference" href="./associative-sequence.html">Associative Sequence</a></li>
|
||||
<li><a class="reference" href="./back-extensible-sequence.html">Back Extensible Sequence</a></li>
|
||||
<li><a class="reference" href="./bidirectional-iterator.html">Bidirectional Iterator</a></li>
|
||||
<li><a class="reference" href="./bidirectional-sequence.html">Bidirectional Sequence</a></li>
|
||||
<li><a class="reference" href="./extensible-associative.html">Extensible Associative Sequence</a></li>
|
||||
<li><a class="reference" href="./extensible-sequence.html">Extensible Sequence</a></li>
|
||||
<li><a class="reference" href="./forward-iterator.html">Forward Iterator</a></li>
|
||||
<li><a class="reference" href="./forward-sequence.html">Forward Sequence</a></li>
|
||||
<li><a class="reference" href="./front-extensible-sequence.html">Front Extensible Sequence</a></li>
|
||||
<li><a class="reference" href="./inserter.html">Inserter</a></li>
|
||||
<li><a class="reference" href="./integral-constant.html">Integral Constant</a></li>
|
||||
<li><a class="reference" href="./integral-sequence-wrapper.html">Integral Sequence Wrapper</a></li>
|
||||
<li><a class="reference" href="./lambda-expression.html">Lambda Expression</a></li>
|
||||
<li><a class="reference" href="./metafunction.html">Metafunction</a></li>
|
||||
<li><a class="reference" href="./metafunction-class.html">Metafunction Class</a></li>
|
||||
<li><a class="reference" href="./numeric-metafunction.html">Numeric Metafunction</a></li>
|
||||
<li><a class="reference" href="./placeholder-expression.html">Placeholder Expression</a></li>
|
||||
<li><a class="reference" href="./random-access-iterator.html">Random Access Iterator</a></li>
|
||||
<li><a class="reference" href="./random-access-sequence.html">Random Access Sequence</a></li>
|
||||
<li><a class="reference" href="./reversible-algorithm.html">Reversible Algorithm</a></li>
|
||||
<li><a class="reference" href="./tag-dispatched.html">Tag Dispatched Metafunction</a></li>
|
||||
<li><a class="reference" href="./trivial-metafunction.html">Trivial Metafunction</a></li>
|
||||
<li><a class="reference" href="./variadic-sequence.html">Variadic Sequence</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./categorized-index.html" class="navigation-link">Prev</a> <a href="./components.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group">Back <a href="./components.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./categorized-index.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
</html>
|
||||
@@ -0,0 +1,48 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: Concepts</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
<body class="docframe refmanual">
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./categorized-index.html" class="navigation-link">Prev</a> <a href="./components.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group">Back <a href="./components.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./categorized-index.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./categorized-index.html" class="navigation-link">Categorized Index</a> / <a href="./categorized-index-concepts.html" class="navigation-link">Concepts</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="id1391">
|
||||
<h1><a class="toc-backref" href="./categorized-index.html#id1612"><a class="subsection-title" href="#concepts" name="concepts">Concepts</a></a></h1>
|
||||
<ul class="simple" id="label-categorized-index-concepts">
|
||||
<li><a class="reference internal" href="./associative-sequence.html">Associative Sequence</a></li>
|
||||
<li><a class="reference internal" href="./back-extensible-sequence.html">Back Extensible Sequence</a></li>
|
||||
<li><a class="reference internal" href="./bidirectional-iterator.html">Bidirectional Iterator</a></li>
|
||||
<li><a class="reference internal" href="./bidirectional-sequence.html">Bidirectional Sequence</a></li>
|
||||
<li><a class="reference internal" href="./extensible-associative-sequence.html">Extensible Associative Sequence</a></li>
|
||||
<li><a class="reference internal" href="./extensible-sequence.html">Extensible Sequence</a></li>
|
||||
<li><a class="reference internal" href="./forward-iterator.html">Forward Iterator</a></li>
|
||||
<li><a class="reference internal" href="./forward-sequence.html">Forward Sequence</a></li>
|
||||
<li><a class="reference internal" href="./front-extensible-sequence.html">Front Extensible Sequence</a></li>
|
||||
<li><a class="reference internal" href="./inserter.html">Inserter</a></li>
|
||||
<li><a class="reference internal" href="./integral-constant.html">Integral Constant</a></li>
|
||||
<li><a class="reference internal" href="./integral-sequence-wrapper.html">Integral Sequence Wrapper</a></li>
|
||||
<li><a class="reference internal" href="./lambda-expression.html">Lambda Expression</a></li>
|
||||
<li><a class="reference internal" href="./metafunction.html">Metafunction</a></li>
|
||||
<li><a class="reference internal" href="./metafunction-class.html">Metafunction Class</a></li>
|
||||
<li><a class="reference internal" href="./numeric-metafunction.html">Numeric Metafunction</a></li>
|
||||
<li><a class="reference internal" href="./placeholder-expression.html">Placeholder Expression</a></li>
|
||||
<li><a class="reference internal" href="./random-access-iterator.html">Random Access Iterator</a></li>
|
||||
<li><a class="reference internal" href="./random-access-sequence.html">Random Access Sequence</a></li>
|
||||
<li><a class="reference internal" href="./reversible-algorithm.html">Reversible Algorithm</a></li>
|
||||
<li><a class="reference internal" href="./tag-dispatched-metafunction.html">Tag Dispatched Metafunction</a></li>
|
||||
<li><a class="reference internal" href="./trivial-metafunction.html">Trivial Metafunction</a></li>
|
||||
<li><a class="reference internal" href="./variadic-sequence.html">Variadic Sequence</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./categorized-index.html" class="navigation-link">Prev</a> <a href="./components.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group">Back <a href="./components.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./categorized-index.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
@@ -1,28 +1,27 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: Categorized Index</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
<body class="docframe refmanual">
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./terminology.html" class="navigation-link">Prev</a> <a href="./categorized-concepts.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./terminology.html" class="navigation-link">Back</a> <a href="./acknowledgements.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="../refmanual.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./terminology.html" class="navigation-link">Prev</a> <a href="./categorized-index-concepts.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./terminology.html" class="navigation-link">Back</a> <a href="./acknowledgements.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="../refmanual.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./categorized-index.html" class="navigation-link">Categorized Index</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="categorized-index">
|
||||
<h1><a class="toc-backref" href="../refmanual.html#id530" name="categorized-index">Categorized Index</a></h1>
|
||||
<a class="target" id="label-categorized-index" name="label-categorized-index"></a><a class="target" id="categorized" name="categorized"></a><ul class="toc simple" id="outline">
|
||||
<li><a class="reference" href="./categorized-concepts.html" id="id531" name="id531">Concepts</a></li>
|
||||
<li><a class="reference" href="./components.html" id="id532" name="id532">Components</a></li>
|
||||
<h1><a class="toc-backref" href="../refmanual.html#id1611">Categorized Index</a></h1>
|
||||
<ul class="toc simple" id="outline">
|
||||
<li><a class="reference internal" href="./categorized-index-concepts.html" id="id1612">Concepts</a></li>
|
||||
<li><a class="reference internal" href="./components.html" id="id1613">Components</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./terminology.html" class="navigation-link">Prev</a> <a href="./categorized-concepts.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./terminology.html" class="navigation-link">Back</a> <a href="./acknowledgements.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="../refmanual.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./terminology.html" class="navigation-link">Prev</a> <a href="./categorized-index-concepts.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./terminology.html" class="navigation-link">Back</a> <a href="./acknowledgements.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="../refmanual.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
@@ -0,0 +1,39 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: BOOST_MPL_CFG_NO_HAS_XXX_TEMPLATE</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
<body class="docframe refmanual">
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./cfg-no-has-xxx.html" class="navigation-link">Prev</a> <a href="./limit-metafunction-arity.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./cfg-no-has-xxx.html" class="navigation-link">Back</a> <a href="./limit-metafunction-arity.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./configuration.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./macros.html" class="navigation-link">Macros</a> / <a href="./configuration.html" class="navigation-link">Configuration</a> / <a href="./cfg-no-has-xxx-template.html" class="navigation-link">BOOST_MPL_CFG_NO_HAS_XXX_TEMPLATE</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="boost-mpl-cfg-no-has-xxx-template">
|
||||
<h1><a class="toc-backref" href="./configuration.html#id1600">BOOST_MPL_CFG_NO_HAS_XXX_TEMPLATE</a></h1>
|
||||
<div class="section" id="id1350">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
// #define <a href="./cfg-no-has-xxx-template.html" class="identifier">BOOST_MPL_CFG_NO_HAS_XXX_TEMPLATE</a>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="id1351">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p><tt class="literal"><span class="pre"><a href="./cfg-no-has-xxx-template.html" class="identifier">BOOST_MPL_CFG_NO_HAS_XXX_TEMPLATE</a></span></tt> is a boolean configuration
|
||||
macro signaling availability of the <a class="reference internal" href="./has-xxx-template-def.html">BOOST_MPL_HAS_XXX_TEMPLATE_DEF</a> /
|
||||
<a class="reference internal" href="./has-xxx-template-named-def.html">BOOST_MPL_HAS_XXX_TEMPLATE_NAMED_DEF</a> introspection macros'
|
||||
functionality on a particular compiler.</p>
|
||||
</div>
|
||||
<div class="section" id="id1352">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference internal" href="./macros.html">Macros</a>, <a class="reference internal" href="./configuration.html">Configuration</a>, <a class="reference internal" href="./has-xxx-template-def.html">BOOST_MPL_HAS_XXX_TEMPLATE_DEF</a>, <a class="reference internal" href="./has-xxx-template-named-def.html">BOOST_MPL_HAS_XXX_TEMPLATE_NAMED_DEF</a></p>
|
||||
<!-- Macros/Configuration//BOOST_MPL_LIMIT_METAFUNCTION_ARITY |20 -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./cfg-no-has-xxx.html" class="navigation-link">Prev</a> <a href="./limit-metafunction-arity.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./cfg-no-has-xxx.html" class="navigation-link">Back</a> <a href="./limit-metafunction-arity.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./configuration.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td><div class="copyright-footer"></div></td></tr></table></body>
|
||||
</html>
|
||||
@@ -1,43 +1,45 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: BOOST_MPL_CFG_NO_HAS_XXX</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
<body class="docframe refmanual">
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./cfg-no-preprocessed.html" class="navigation-link">Prev</a> <a href="./limit-metafunction-arity.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./cfg-no-preprocessed.html" class="navigation-link">Back</a> <a href="./limit-metafunction-arity.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./configuration.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./cfg-no-preprocessed-headers.html" class="navigation-link">Prev</a> <a href="./cfg-no-has-xxx-template.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./cfg-no-preprocessed-headers.html" class="navigation-link">Back</a> <a href="./cfg-no-has-xxx-template.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./configuration.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./macros.html" class="navigation-link">Macros</a> / <a href="./configuration.html" class="navigation-link">Configuration</a> / <a href="./cfg-no-has-xxx.html" class="navigation-link">BOOST_MPL_CFG_NO_HAS_XXX</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="cfg-no-has-xxx">
|
||||
<h1><a class="toc-backref" href="./configuration.html#id520" name="cfg-no-has-xxx">BOOST_MPL_CFG_NO_HAS_XXX</a></h1>
|
||||
<div class="section" id="configuration-cfg-synopsis">
|
||||
<div class="section" id="boost-mpl-cfg-no-has-xxx">
|
||||
<h1><a class="toc-backref" href="./configuration.html#id1599">BOOST_MPL_CFG_NO_HAS_XXX</a></h1>
|
||||
<div class="section" id="id1347">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
// #define <a href="./cfg-no-has-xxx.html" class="identifier">BOOST_MPL_CFG_NO_HAS_XXX</a>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="configuration-cfg-description">
|
||||
<div class="section" id="id1348">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p><tt class="literal"><span class="pre"><a href="./cfg-no-has-xxx.html" class="identifier">BOOST_MPL_CFG_NO_HAS_XXX</a></span></tt> is an boolean configuration macro
|
||||
signaling availability of the <a class="refentry reference" href="./has-xxx-trait-def.html"><tt class="refentry literal"><span class="pre">BOOST_MPL_HAS_XXX_TRAIT_DEF</span></tt></a> /
|
||||
<a class="refentry reference" href="./has-xxx-trait-named-def.html"><tt class="refentry literal"><span class="pre">BOOST_MPL_HAS_XXX_TRAIT_NAMED_DEF</span></tt></a> introspection macros' functionality
|
||||
<p><tt class="literal"><span class="pre"><a href="./cfg-no-has-xxx.html" class="identifier">BOOST_MPL_CFG_NO_HAS_XXX</a></span></tt> is an boolean configuration macro
|
||||
signaling availability of the <a class="reference internal" href="./has-xxx-trait-def.html">BOOST_MPL_HAS_XXX_TRAIT_DEF</a> /
|
||||
<a class="reference internal" href="./has-xxx-trait-named-def.html">BOOST_MPL_HAS_XXX_TRAIT_NAMED_DEF</a> introspection macros' functionality
|
||||
on a particular compiler.</p>
|
||||
</div>
|
||||
<div class="section" id="configuration-cfg-see-also">
|
||||
<div class="section" id="id1349">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./macros.html">Macros</a>, <a class="reference" href="./configuration.html">Configuration</a>, <a class="refentry reference" href="./has-xxx-trait-def.html"><tt class="refentry literal"><span class="pre">BOOST_MPL_HAS_XXX_TRAIT_DEF</span></tt></a>, <a class="refentry reference" href="./has-xxx-trait-named-def.html"><tt class="refentry literal"><span class="pre">BOOST_MPL_HAS_XXX_TRAIT_NAMED_DEF</span></tt></a></p>
|
||||
<!-- modtime: November 10, 2004 04:44:13 +0000 -->
|
||||
<!-- Macros/Configuration//BOOST_MPL_LIMIT_METAFUNCTION_ARITY |20 -->
|
||||
<p><a class="reference internal" href="./macros.html">Macros</a>, <a class="reference internal" href="./configuration.html">Configuration</a>, <a class="reference internal" href="./has-xxx-trait-def.html">BOOST_MPL_HAS_XXX_TRAIT_DEF</a>, <a class="reference internal" href="./has-xxx-trait-named-def.html">BOOST_MPL_HAS_XXX_TRAIT_NAMED_DEF</a></p>
|
||||
<!-- Macros/Configuration//BOOST_MPL_CFG_NO_HAS_XXX_TEMPLATE |20 -->
|
||||
<!-- Copyright Daniel Walker 2007. -->
|
||||
<!-- Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./cfg-no-preprocessed.html" class="navigation-link">Prev</a> <a href="./limit-metafunction-arity.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./cfg-no-preprocessed.html" class="navigation-link">Back</a> <a href="./limit-metafunction-arity.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./configuration.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./cfg-no-preprocessed-headers.html" class="navigation-link">Prev</a> <a href="./cfg-no-has-xxx-template.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./cfg-no-preprocessed-headers.html" class="navigation-link">Back</a> <a href="./cfg-no-has-xxx-template.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./configuration.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+19
-21
@@ -1,49 +1,47 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
<body class="docframe refmanual">
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./configuration.html" class="navigation-link">Prev</a> <a href="./cfg-no-has-xxx.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group">Back <a href="./cfg-no-has-xxx.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./configuration.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./macros.html" class="navigation-link">Macros</a> / <a href="./configuration.html" class="navigation-link">Configuration</a> / <a href="./cfg-no-preprocessed.html" class="navigation-link">BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS</a></td>
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./macros.html" class="navigation-link">Macros</a> / <a href="./configuration.html" class="navigation-link">Configuration</a> / <a href="./cfg-no-preprocessed-headers.html" class="navigation-link">BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="cfg-no-preprocessed">
|
||||
<h1><a class="toc-backref" href="./configuration.html#id519" name="cfg-no-preprocessed">BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS</a></h1>
|
||||
<a class="target" id="id294" name="id294"></a><div class="section" id="cfg-synopsis">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<div class="section" id="boost-mpl-cfg-no-preprocessed-headers">
|
||||
<h1><a class="toc-backref" href="./configuration.html#id1598">BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS</a></h1>
|
||||
<div class="section" id="id1343">
|
||||
<span id="boost-mpl-cfg-no-preprocessed"></span><h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
// #define <a href="./cfg-no-preprocessed.html" class="identifier">BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS</a>
|
||||
// #define <a href="./cfg-no-preprocessed-headers.html" class="identifier">BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS</a>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="cfg-description">
|
||||
<div class="section" id="id1344">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p><tt class="literal"><span class="pre"><a href="./cfg-no-preprocessed.html" class="identifier">BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS</a></span></tt> is an boolean configuration macro
|
||||
<p><tt class="literal"><span class="pre"><a href="./cfg-no-preprocessed-headers.html" class="identifier">BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS</a></span></tt> is an boolean configuration macro
|
||||
regulating library's internal use of preprocessed headers. When defined, it
|
||||
instructs the MPL to discard the pre-generated headers found in
|
||||
<tt class="literal"><span class="pre">boost/mpl/aux_/preprocessed</span></tt> directory and use <a class="reference" href="http://boost-consulting.com/tmpbook/preprocessor.html" target="_top">preprocessor
|
||||
metaprogramming</a> techniques to generate the necessary versions of the
|
||||
instructs the MPL to discard the pre-generated headers found in
|
||||
<tt class="literal"><span class="pre">boost/mpl/aux_/preprocessed</span></tt> directory and use <a class="reference external" href="http://boost-consulting.com/tmpbook/preprocessor.html" target="_top">preprocessor
|
||||
metaprogramming</a> techniques to generate the necessary versions of the
|
||||
library components on the fly.</p>
|
||||
<p>In this implementation of the library, the macro is not defined by default.
|
||||
To change the default configuration, define
|
||||
<tt class="literal"><span class="pre"><a href="./cfg-no-preprocessed.html" class="identifier">BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS</a></span></tt> before including any library
|
||||
To change the default configuration, define
|
||||
<tt class="literal"><span class="pre"><a href="./cfg-no-preprocessed-headers.html" class="identifier">BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS</a></span></tt> before including any library
|
||||
header.</p>
|
||||
</div>
|
||||
<div class="section" id="cfg-see-also">
|
||||
<div class="section" id="id1346">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./macros.html">Macros</a>, <a class="reference" href="./configuration.html">Configuration</a></p>
|
||||
<!-- modtime: November 15, 2004 01:55:35 +0000 -->
|
||||
<p><a class="reference internal" href="./macros.html">Macros</a>, <a class="reference internal" href="./configuration.html">Configuration</a></p>
|
||||
<!-- Macros/Configuration//BOOST_MPL_CFG_NO_HAS_XXX |20 -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./configuration.html" class="navigation-link">Prev</a> <a href="./cfg-no-has-xxx.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group">Back <a href="./cfg-no-has-xxx.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./configuration.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
@@ -0,0 +1,112 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: char_</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
<body class="docframe refmanual">
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./integral-c.html" class="navigation-link">Prev</a> <a href="./data-types-miscellaneous.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./integral-c.html" class="navigation-link">Back</a> Along</span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./numeric.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./data-types.html" class="navigation-link">Data Types</a> / <a href="./numeric.html" class="navigation-link">Numeric</a> / <a href="./char.html" class="navigation-link">char_</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="char">
|
||||
<h1><a class="toc-backref" href="./numeric.html#id1581">char_</a></h1>
|
||||
<div class="section" id="id1262">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
char N
|
||||
>
|
||||
struct <a href="./char.html" class="identifier">char_</a>
|
||||
{
|
||||
// <em>unspecified</em>
|
||||
// ...
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="id1263">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>An <a class="reference internal" href="./integral-constant.html">Integral Constant</a> wrapper for <tt class="literal"><span class="pre">char</span></tt>.</p>
|
||||
</div>
|
||||
<div class="section" id="id1264">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/char.hpp" class="header">boost/mpl/char.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="id1265">
|
||||
<h3><a class="subsection-title" href="#model-of" name="model-of">Model of</a></h3>
|
||||
<p><a class="reference internal" href="./integral-constant.html">Integral Constant</a></p>
|
||||
</div>
|
||||
<div class="section" id="id1266">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="21%" />
|
||||
<col width="42%" />
|
||||
<col width="37%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">N</span></tt></td>
|
||||
<td>A character constant</td>
|
||||
<td>A value to wrap.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="id1267">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>The semantics of an expression are defined only
|
||||
where they differ from, or are not defined in <a class="reference internal" href="./integral-constant.html">Integral Constant</a>.</p>
|
||||
<p>For arbitrary character constant <tt class="literal"><span class="pre">c</span></tt>:</p>
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="24%" />
|
||||
<col width="76%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th class="head">Expression</th>
|
||||
<th class="head">Semantics</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./char.html" class="identifier">char_</a><c></span></tt></td>
|
||||
<td>An <a class="reference internal" href="./integral-constant.html">Integral Constant</a> <tt class="literal"><span class="pre">x</span></tt> such that <tt class="literal"><span class="pre">x::value</span> <span class="pre">==</span> <span class="pre">c</span></tt>
|
||||
and <tt class="literal"><span class="pre">x::<a href="./value-type.html" class="identifier">value_type</a></span></tt> is identical to <tt class="literal"><span class="pre">char</span></tt>.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="id1268">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./char.html" class="identifier">char_</a><'c'> c;
|
||||
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( is_same< c::<a href="./value-type.html" class="identifier">value_type</a>, char > ));
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( is_same< c::type, c > ));
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( is_same< <a href="./next.html" class="identifier">next</a>< c >::type, <a href="./char.html" class="identifier">char_</a><'d'> > ));
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( is_same< <a href="./prior.html" class="identifier">prior</a>< c >::type, <a href="./char.html" class="identifier">char_</a><'b'> > ));
|
||||
<a href="./assert-relation.html" class="identifier">BOOST_MPL_ASSERT_RELATION</a>( (c::value), ==, 'c' );
|
||||
assert( c() == 'c' );
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="id1269">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference internal" href="./data-types.html">Data Types</a>, <a class="reference internal" href="./integral-constant.html">Integral Constant</a>, <a class="reference internal" href="./int.html">int_</a>, <a class="reference internal" href="./size-t.html">size_t</a>, <a class="reference internal" href="./integral-c.html">integral_c</a></p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./integral-c.html" class="navigation-link">Prev</a> <a href="./data-types-miscellaneous.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./integral-c.html" class="navigation-link">Back</a> Along</span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./numeric.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2009 Eric Niebler</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
+17
-18
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: Classes</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,27 +12,29 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./sequences.html" class="navigation-link">Sequences</a> / <a href="./classes.html" class="navigation-link">Classes</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="classes">
|
||||
<h1><a class="toc-backref" href="./sequences.html#id334" name="classes">Classes</a></h1>
|
||||
<a class="target" id="label-sequences-classes" name="label-sequences-classes"></a><p>The MPL provides a large number of predefined general-purpose sequence
|
||||
<h1><a class="toc-backref" href="./sequences.html#id1405">Classes</a></h1>
|
||||
<p id="label-sequences-classes">The MPL provides a large number of predefined general-purpose sequence
|
||||
classes covering most of the typical metaprogramming needs out-of-box.</p>
|
||||
<!-- For all library-supplied sequences a publicly-derived class with no additional
|
||||
<!-- For all library-supplied sequences a publicly-derived class with no additional
|
||||
members is equivalent except for type identity. -->
|
||||
<!-- modtime: October 25, 2004 06:16:07 +0000 -->
|
||||
<!-- Sequences/Classes//vector |10 -->
|
||||
<ul class="toc simple" id="outline">
|
||||
<li><a class="reference" href="./vector.html" id="id335" name="id335">vector</a></li>
|
||||
<li><a class="reference" href="./list.html" id="id336" name="id336">list</a></li>
|
||||
<li><a class="reference" href="./deque.html" id="id337" name="id337">deque</a></li>
|
||||
<li><a class="reference" href="./set.html" id="id338" name="id338">set</a></li>
|
||||
<li><a class="reference" href="./map.html" id="id339" name="id339">map</a></li>
|
||||
<li><a class="reference" href="./range-c.html" id="id340" name="id340">range_c</a></li>
|
||||
<li><a class="reference" href="./vector-c.html" id="id341" name="id341">vector_c</a></li>
|
||||
<li><a class="reference" href="./list-c.html" id="id342" name="id342">list_c</a></li>
|
||||
<li><a class="reference" href="./set-c.html" id="id343" name="id343">set_c</a></li>
|
||||
<li><a class="reference internal" href="./vector.html" id="id1406">vector</a></li>
|
||||
<li><a class="reference internal" href="./list.html" id="id1407">list</a></li>
|
||||
<li><a class="reference internal" href="./deque.html" id="id1408">deque</a></li>
|
||||
<li><a class="reference internal" href="./set.html" id="id1409">set</a></li>
|
||||
<li><a class="reference internal" href="./map.html" id="id1410">map</a></li>
|
||||
<li><a class="reference internal" href="./range-c.html" id="id1411">range_c</a></li>
|
||||
<li><a class="reference internal" href="./vector-c.html" id="id1412">vector_c</a></li>
|
||||
<li><a class="reference internal" href="./list-c.html" id="id1413">list_c</a></li>
|
||||
<li><a class="reference internal" href="./set-c.html" id="id1414">set_c</a></li>
|
||||
<li><a class="reference internal" href="./string.html" id="id1415">string</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./variadic-sequence.html" class="navigation-link">Prev</a> <a href="./vector.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./concepts.html" class="navigation-link">Back</a> <a href="./views.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./sequences.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+31
-31
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: clear</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,8 +12,8 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./sequences.html" class="navigation-link">Sequences</a> / <a href="./intrinsic-metafunctions.html" class="navigation-link">Intrinsic Metafunctions</a> / <a href="./clear.html" class="navigation-link">clear</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="clear">
|
||||
<h1><a class="toc-backref" href="./intrinsic-metafunctions.html#id357" name="clear">clear</a></h1>
|
||||
<div class="section" id="clear-synopsis">
|
||||
<h1><a class="toc-backref" href="./intrinsic-metafunctions.html#id1429">clear</a></h1>
|
||||
<div class="section" id="id211">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
@@ -28,71 +25,73 @@ struct <a href="./clear.html" class="identifier">clear</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="clear-description">
|
||||
<div class="section" id="id212">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Returns an empty sequence <a class="reference" href="./terminology.html#concept-identical">concept-identical</a> to <tt class="literal"><span class="pre">Sequence</span></tt>.</p>
|
||||
<p>Returns an empty sequence <a class="reference internal" href="./terminology.html#concept-identical">concept-identical</a> to <tt class="literal"><span class="pre">Sequence</span></tt>.</p>
|
||||
</div>
|
||||
<div class="section" id="clear-header">
|
||||
<div class="section" id="id213">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/clear.hpp" class="header">boost/mpl/clear.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="clear-model-of">
|
||||
<div class="section" id="id214">
|
||||
<h3><a class="subsection-title" href="#model-of" name="model-of">Model of</a></h3>
|
||||
<p><a class="reference" href="./tag-dispatched.html">Tag Dispatched Metafunction</a></p>
|
||||
<p><a class="reference internal" href="./tag-dispatched-metafunction.html">Tag Dispatched Metafunction</a></p>
|
||||
</div>
|
||||
<div class="section" id="clear-parameters">
|
||||
<div class="section" id="id215">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="17%" />
|
||||
<col width="39%" />
|
||||
<col width="44%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">Sequence</span></tt></td>
|
||||
<td><a class="reference" href="./extensible-sequence.html">Extensible Sequence</a> or
|
||||
<a class="reference" href="./extensible-associative.html">Extensible Associative Sequence</a></td>
|
||||
<td><a class="reference internal" href="./extensible-sequence.html">Extensible Sequence</a> or
|
||||
<a class="reference internal" href="./extensible-associative-sequence.html">Extensible Associative Sequence</a></td>
|
||||
<td>A sequence to get an empty "copy" of.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="clear-expression-semantics">
|
||||
<div class="section" id="id216">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For any <a class="reference" href="./extensible-sequence.html">Extensible Sequence</a> or <a class="reference" href="./extensible-associative.html">Extensible Associative Sequence</a> <tt class="literal"><span class="pre">s</span></tt>:</p>
|
||||
<p>For any <a class="reference internal" href="./extensible-sequence.html">Extensible Sequence</a> or <a class="reference internal" href="./extensible-associative-sequence.html">Extensible Associative Sequence</a> <tt class="literal"><span class="pre">s</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./clear.html" class="identifier">clear</a><s>::type t;
|
||||
typedef <a href="./clear.html" class="identifier">clear</a><s>::type t;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference" href="./extensible-sequence.html">Extensible Sequence</a> or <a class="reference" href="./extensible-associative.html">Extensible Associative Sequence</a>.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><a class="reference internal" href="./extensible-sequence.html">Extensible Sequence</a> or <a class="reference internal" href="./extensible-associative-sequence.html">Extensible Associative Sequence</a>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Equivalent to</p>
|
||||
<pre class="last literal-block">
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./erase.html" class="identifier">erase</a>< s, <a href="./begin.html" class="identifier">begin</a><s>::type, <a href="./end.html" class="identifier">end</a><s>::type >::type t;
|
||||
</pre>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Postcondition:</th><td class="field-body"><tt class="literal"><span class="pre"><a href="./empty.html" class="identifier">empty</a><s>::value</span> <span class="pre">==</span> <span class="pre">true</span></tt>.</td>
|
||||
<tr class="field"><th class="field-name">Postcondition:</th><td class="field-body"><p class="first last"><tt class="literal"><span class="pre"><a href="./empty.html" class="identifier">empty</a><s>::value</span> <span class="pre">==</span> <span class="pre">true</span></tt>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="clear-complexity">
|
||||
<div class="section" id="id217">
|
||||
<h3><a class="subsection-title" href="#complexity" name="complexity">Complexity</a></h3>
|
||||
<p>Amortized constant time.</p>
|
||||
</div>
|
||||
<div class="section" id="clear-example">
|
||||
<div class="section" id="id218">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./vector-c.html" class="identifier">vector_c</a><int,1,3,5,7,9,11> odds;
|
||||
@@ -101,15 +100,16 @@ typedef <a href="./clear.html" class="identifier">clear</a><odds>::type no
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( <a href="./empty.html" class="identifier">empty</a><nothing> ));
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="clear-see-also">
|
||||
<div class="section" id="id219">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./extensible-sequence.html">Extensible Sequence</a>, <a class="reference" href="./extensible-associative.html">Extensible Associative Sequence</a>, <a class="refentry reference" href="./erase.html"><tt class="refentry literal"><span class="pre">erase</span></tt></a>, <a class="refentry reference" href="./empty.html"><tt class="refentry literal"><span class="pre">empty</span></tt></a>, <a class="refentry reference" href="./begin.html"><tt class="refentry literal"><span class="pre">begin</span></tt></a>, <a class="refentry reference" href="./end.html"><tt class="refentry literal"><span class="pre">end</span></tt></a></p>
|
||||
<!-- modtime: November 13, 2004 01:25:47 +0000 -->
|
||||
<p><a class="reference internal" href="./extensible-sequence.html">Extensible Sequence</a>, <a class="reference internal" href="./extensible-associative-sequence.html">Extensible Associative Sequence</a>, <a class="reference internal" href="./erase.html">erase</a>, <a class="reference internal" href="./empty.html">empty</a>, <a class="reference internal" href="./begin.html">begin</a>, <a class="reference internal" href="./end.html">end</a></p>
|
||||
<!-- Sequences/Intrinsic Metafunctions//empty -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./begin.html" class="navigation-link">Prev</a> <a href="./empty.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./begin.html" class="navigation-link">Back</a> <a href="./empty.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./intrinsic-metafunctions.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: Comparisons</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,20 +12,21 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./metafunctions.html" class="navigation-link">Metafunctions</a> / <a href="./comparisons.html" class="navigation-link">Comparisons</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="comparisons">
|
||||
<h1><a class="toc-backref" href="./metafunctions.html#id468" name="comparisons">Comparisons</a></h1>
|
||||
<a class="target" id="id235" name="id235"></a><!-- modtime: November 08, 2004 06:50:08 +0000 -->
|
||||
<!-- Metafunctions/Comparisons//less |10 -->
|
||||
<h1><a class="toc-backref" href="./metafunctions.html#id1542">Comparisons</a></h1>
|
||||
<span class="target" id="label-metafunctions-comparisons"></span><!-- Metafunctions/Comparisons//less |10 -->
|
||||
<ul class="toc simple" id="outline">
|
||||
<li><a class="reference" href="./less.html" id="id469" name="id469">less</a></li>
|
||||
<li><a class="reference" href="./less-equal.html" id="id470" name="id470">less_equal</a></li>
|
||||
<li><a class="reference" href="./greater.html" id="id471" name="id471">greater</a></li>
|
||||
<li><a class="reference" href="./greater-equal.html" id="id472" name="id472">greater_equal</a></li>
|
||||
<li><a class="reference" href="./equal-to.html" id="id473" name="id473">equal_to</a></li>
|
||||
<li><a class="reference" href="./not-equal-to.html" id="id474" name="id474">not_equal_to</a></li>
|
||||
<li><a class="reference internal" href="./less.html" id="id1543">less</a></li>
|
||||
<li><a class="reference internal" href="./less-equal.html" id="id1544">less_equal</a></li>
|
||||
<li><a class="reference internal" href="./greater.html" id="id1545">greater</a></li>
|
||||
<li><a class="reference internal" href="./greater-equal.html" id="id1546">greater_equal</a></li>
|
||||
<li><a class="reference internal" href="./equal-to.html" id="id1547">equal_to</a></li>
|
||||
<li><a class="reference internal" href="./not-equal-to.html" id="id1548">not_equal_to</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./negate.html" class="navigation-link">Prev</a> <a href="./less.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./arithmetic-operations.html" class="navigation-link">Back</a> <a href="./logical-operations.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./metafunctions.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+166
-159
@@ -1,176 +1,183 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: Components</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
<body class="docframe refmanual">
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./categorized-concepts.html" class="navigation-link">Prev</a> <a href="./acknowledgements.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./categorized-concepts.html" class="navigation-link">Back</a> Along</span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./categorized-index.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./categorized-index-concepts.html" class="navigation-link">Prev</a> <a href="./acknowledgements.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./categorized-index-concepts.html" class="navigation-link">Back</a> Along</span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./categorized-index.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./categorized-index.html" class="navigation-link">Categorized Index</a> / <a href="./components.html" class="navigation-link">Components</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="components">
|
||||
<h1><a class="toc-backref" href="./categorized-index.html#id532" name="components">Components</a></h1>
|
||||
<ul class="simple">
|
||||
<li><a class="refentry reference" href="./assert.html"><tt class="refentry literal"><span class="pre">BOOST_MPL_ASSERT</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./assert-msg.html"><tt class="refentry literal"><span class="pre">BOOST_MPL_ASSERT_MSG</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./assert-not.html"><tt class="refentry literal"><span class="pre">BOOST_MPL_ASSERT_NOT</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./assert-relation.html"><tt class="refentry literal"><span class="pre">BOOST_MPL_ASSERT_RELATION</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./aux-lambda-support.html"><tt class="refentry literal"><span class="pre">BOOST_MPL_AUX_LAMBDA_SUPPORT</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./cfg-no-has-xxx.html"><tt class="refentry literal"><span class="pre">BOOST_MPL_CFG_NO_HAS_XXX</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./cfg-no-preprocessed.html"><tt class="refentry literal"><span class="pre">BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./has-xxx-trait-def.html"><tt class="refentry literal"><span class="pre">BOOST_MPL_HAS_XXX_TRAIT_DEF</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./has-xxx-trait-named-def.html"><tt class="refentry literal"><span class="pre">BOOST_MPL_HAS_XXX_TRAIT_NAMED_DEF</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./limit-list-size.html"><tt class="refentry literal"><span class="pre">BOOST_MPL_LIMIT_LIST_SIZE</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./limit-map-size.html"><tt class="refentry literal"><span class="pre">BOOST_MPL_LIMIT_MAP_SIZE</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./limit-metafunction-arity.html"><tt class="refentry literal"><span class="pre">BOOST_MPL_LIMIT_METAFUNCTION_ARITY</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./limit-set-size.html"><tt class="refentry literal"><span class="pre">BOOST_MPL_LIMIT_SET_SIZE</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./limit-unrolling.html"><tt class="refentry literal"><span class="pre">BOOST_MPL_LIMIT_UNROLLING</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./limit-vector-size.html"><tt class="refentry literal"><span class="pre">BOOST_MPL_LIMIT_VECTOR_SIZE</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./placeholders.html"><tt class="refentry literal"><span class="pre">_1</span></tt></a>, <a class="refentry reference" href="./placeholders.html"><tt class="refentry literal"><span class="pre">_2</span></tt></a>, <a class="refentry reference" href="./placeholders.html"><tt class="refentry literal"><span class="pre">_3</span></tt></a>,<em>...</em></li>
|
||||
<li><a class="refentry reference" href="./accumulate.html"><tt class="refentry literal"><span class="pre">accumulate</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./advance.html"><tt class="refentry literal"><span class="pre">advance</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./always.html"><tt class="refentry literal"><span class="pre">always</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./and.html"><tt class="refentry literal"><span class="pre">and_</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./apply.html"><tt class="refentry literal"><span class="pre">apply</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./apply-wrap.html"><tt class="refentry literal"><span class="pre">apply_wrap</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./arg.html"><tt class="refentry literal"><span class="pre">arg</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./at.html"><tt class="refentry literal"><span class="pre">at</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./at-c.html"><tt class="refentry literal"><span class="pre">at_c</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./back.html"><tt class="refentry literal"><span class="pre">back</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./back-inserter.html"><tt class="refentry literal"><span class="pre">back_inserter</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./begin.html"><tt class="refentry literal"><span class="pre">begin</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./bind.html"><tt class="refentry literal"><span class="pre">bind</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./bitand.html"><tt class="refentry literal"><span class="pre">bitand_</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./bitor.html"><tt class="refentry literal"><span class="pre">bitor_</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./bitxor.html"><tt class="refentry literal"><span class="pre">bitxor_</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./bool.html"><tt class="refentry literal"><span class="pre">bool_</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./clear.html"><tt class="refentry literal"><span class="pre">clear</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./contains.html"><tt class="refentry literal"><span class="pre">contains</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./copy.html"><tt class="refentry literal"><span class="pre">copy</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./copy-if.html"><tt class="refentry literal"><span class="pre">copy_if</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./count.html"><tt class="refentry literal"><span class="pre">count</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./count-if.html"><tt class="refentry literal"><span class="pre">count_if</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./deque.html"><tt class="refentry literal"><span class="pre">deque</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./deref.html"><tt class="refentry literal"><span class="pre">deref</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./distance.html"><tt class="refentry literal"><span class="pre">distance</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./divides.html"><tt class="refentry literal"><span class="pre">divides</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./empty.html"><tt class="refentry literal"><span class="pre">empty</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./empty-base.html"><tt class="refentry literal"><span class="pre">empty_base</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./empty-sequence.html"><tt class="refentry literal"><span class="pre">empty_sequence</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./end.html"><tt class="refentry literal"><span class="pre">end</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./equal.html"><tt class="refentry literal"><span class="pre">equal</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./equal-to.html"><tt class="refentry literal"><span class="pre">equal_to</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./erase.html"><tt class="refentry literal"><span class="pre">erase</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./erase-key.html"><tt class="refentry literal"><span class="pre">erase_key</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./eval-if.html"><tt class="refentry literal"><span class="pre">eval_if</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./eval-if-c.html"><tt class="refentry literal"><span class="pre">eval_if_c</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./filter-view.html"><tt class="refentry literal"><span class="pre">filter_view</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./find.html"><tt class="refentry literal"><span class="pre">find</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./find-if.html"><tt class="refentry literal"><span class="pre">find_if</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./fold.html"><tt class="refentry literal"><span class="pre">fold</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./front.html"><tt class="refentry literal"><span class="pre">front</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./front-inserter.html"><tt class="refentry literal"><span class="pre">front_inserter</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./greater.html"><tt class="refentry literal"><span class="pre">greater</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./greater-equal.html"><tt class="refentry literal"><span class="pre">greater_equal</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./has-key.html"><tt class="refentry literal"><span class="pre">has_key</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./identity.html"><tt class="refentry literal"><span class="pre">identity</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./if.html"><tt class="refentry literal"><span class="pre">if_</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./if-c.html"><tt class="refentry literal"><span class="pre">if_c</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./inherit.html"><tt class="refentry literal"><span class="pre">inherit</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./inherit-linearly.html"><tt class="refentry literal"><span class="pre">inherit_linearly</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./insert.html"><tt class="refentry literal"><span class="pre">insert</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./insert-range.html"><tt class="refentry literal"><span class="pre">insert_range</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./inserters-inserter.html"><tt class="refentry literal"><span class="pre">inserter</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./int.html"><tt class="refentry literal"><span class="pre">int_</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./integral-c.html"><tt class="refentry literal"><span class="pre">integral_c</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./is-sequence.html"><tt class="refentry literal"><span class="pre">is_sequence</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./iter-fold.html"><tt class="refentry literal"><span class="pre">iter_fold</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./iterator-category.html"><tt class="refentry literal"><span class="pre">iterator_category</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./iterator-range.html"><tt class="refentry literal"><span class="pre">iterator_range</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./joint-view.html"><tt class="refentry literal"><span class="pre">joint_view</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./key-type.html"><tt class="refentry literal"><span class="pre">key_type</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./lambda.html"><tt class="refentry literal"><span class="pre">lambda</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./less.html"><tt class="refentry literal"><span class="pre">less</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./less-equal.html"><tt class="refentry literal"><span class="pre">less_equal</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./list.html"><tt class="refentry literal"><span class="pre">list</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./list-c.html"><tt class="refentry literal"><span class="pre">list_c</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./long.html"><tt class="refentry literal"><span class="pre">long_</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./lower-bound.html"><tt class="refentry literal"><span class="pre">lower_bound</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./map.html"><tt class="refentry literal"><span class="pre">map</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./max.html"><tt class="refentry literal"><span class="pre">max</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./max-element.html"><tt class="refentry literal"><span class="pre">max_element</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./min.html"><tt class="refentry literal"><span class="pre">min</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./min-element.html"><tt class="refentry literal"><span class="pre">min_element</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./minus.html"><tt class="refentry literal"><span class="pre">minus</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./modulus.html"><tt class="refentry literal"><span class="pre">modulus</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./negate.html"><tt class="refentry literal"><span class="pre">negate</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./next.html"><tt class="refentry literal"><span class="pre">next</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./not.html"><tt class="refentry literal"><span class="pre">not_</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./not-equal-to.html"><tt class="refentry literal"><span class="pre">not_equal_to</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./numeric-cast.html"><tt class="refentry literal"><span class="pre">numeric_cast</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./or.html"><tt class="refentry literal"><span class="pre">or_</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./order.html"><tt class="refentry literal"><span class="pre">order</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./pair.html"><tt class="refentry literal"><span class="pre">pair</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./partition.html"><tt class="refentry literal"><span class="pre">partition</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./plus.html"><tt class="refentry literal"><span class="pre">plus</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./pop-back.html"><tt class="refentry literal"><span class="pre">pop_back</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./pop-front.html"><tt class="refentry literal"><span class="pre">pop_front</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./prior.html"><tt class="refentry literal"><span class="pre">prior</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./protect.html"><tt class="refentry literal"><span class="pre">protect</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./push-back.html"><tt class="refentry literal"><span class="pre">push_back</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./push-front.html"><tt class="refentry literal"><span class="pre">push_front</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./quote.html"><tt class="refentry literal"><span class="pre">quote</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./range-c.html"><tt class="refentry literal"><span class="pre">range_c</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./remove.html"><tt class="refentry literal"><span class="pre">remove</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./remove-if.html"><tt class="refentry literal"><span class="pre">remove_if</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./replace.html"><tt class="refentry literal"><span class="pre">replace</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./replace-if.html"><tt class="refentry literal"><span class="pre">replace_if</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./reverse.html"><tt class="refentry literal"><span class="pre">reverse</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./reverse-copy.html"><tt class="refentry literal"><span class="pre">reverse_copy</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./reverse-copy-if.html"><tt class="refentry literal"><span class="pre">reverse_copy_if</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./reverse-fold.html"><tt class="refentry literal"><span class="pre">reverse_fold</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./reverse-iter-fold.html"><tt class="refentry literal"><span class="pre">reverse_iter_fold</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./reverse-partition.html"><tt class="refentry literal"><span class="pre">reverse_partition</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./reverse-remove.html"><tt class="refentry literal"><span class="pre">reverse_remove</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./reverse-remove-if.html"><tt class="refentry literal"><span class="pre">reverse_remove_if</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./reverse-replace.html"><tt class="refentry literal"><span class="pre">reverse_replace</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./reverse-replace-if.html"><tt class="refentry literal"><span class="pre">reverse_replace_if</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./reverse-stable-partition.html"><tt class="refentry literal"><span class="pre">reverse_stable_partition</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./reverse-transform.html"><tt class="refentry literal"><span class="pre">reverse_transform</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./reverse-unique.html"><tt class="refentry literal"><span class="pre">reverse_unique</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./sequence-tag.html"><tt class="refentry literal"><span class="pre">sequence_tag</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./set.html"><tt class="refentry literal"><span class="pre">set</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./set-c.html"><tt class="refentry literal"><span class="pre">set_c</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./shift-left.html"><tt class="refentry literal"><span class="pre">shift_left</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./shift-right.html"><tt class="refentry literal"><span class="pre">shift_right</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./single-view.html"><tt class="refentry literal"><span class="pre">single_view</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./size.html"><tt class="refentry literal"><span class="pre">size</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./size-t.html"><tt class="refentry literal"><span class="pre">size_t</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./sizeof.html"><tt class="refentry literal"><span class="pre">sizeof_</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./sort.html"><tt class="refentry literal"><span class="pre">sort</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./stable-partition.html"><tt class="refentry literal"><span class="pre">stable_partition</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./times.html"><tt class="refentry literal"><span class="pre">times</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./transform.html"><tt class="refentry literal"><span class="pre">transform</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./transform-view.html"><tt class="refentry literal"><span class="pre">transform_view</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./unique.html"><tt class="refentry literal"><span class="pre">unique</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./unpack-args.html"><tt class="refentry literal"><span class="pre">unpack_args</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./upper-bound.html"><tt class="refentry literal"><span class="pre">upper_bound</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./value-type.html"><tt class="refentry literal"><span class="pre">value_type</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./vector.html"><tt class="refentry literal"><span class="pre">vector</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./vector-c.html"><tt class="refentry literal"><span class="pre">vector_c</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./void.html"><tt class="refentry literal"><span class="pre">void_</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./zip-view.html"><tt class="refentry literal"><span class="pre">zip_view</span></tt></a></li>
|
||||
<h1><a class="toc-backref" href="./categorized-index.html#id1613">Components</a></h1>
|
||||
<ul class="simple" id="label-categorized-index-components">
|
||||
<li><a class="reference internal" href="./assert.html">BOOST_MPL_ASSERT</a></li>
|
||||
<li><a class="reference internal" href="./assert-msg.html">BOOST_MPL_ASSERT_MSG</a></li>
|
||||
<li><a class="reference internal" href="./assert-not.html">BOOST_MPL_ASSERT_NOT</a></li>
|
||||
<li><a class="reference internal" href="./assert-relation.html">BOOST_MPL_ASSERT_RELATION</a></li>
|
||||
<li><a class="reference internal" href="./aux-lambda-support.html">BOOST_MPL_AUX_LAMBDA_SUPPORT</a></li>
|
||||
<li><a class="reference internal" href="./cfg-no-has-xxx.html">BOOST_MPL_CFG_NO_HAS_XXX</a></li>
|
||||
<li><a class="reference internal" href="./cfg-no-has-xxx-template.html">BOOST_MPL_CFG_NO_HAS_XXX_TEMPLATE</a></li>
|
||||
<li><a class="reference internal" href="./cfg-no-preprocessed-headers.html">BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS</a></li>
|
||||
<li><a class="reference internal" href="./has-xxx-template-def.html">BOOST_MPL_HAS_XXX_TEMPLATE_DEF</a></li>
|
||||
<li><a class="reference internal" href="./has-xxx-template-named-def.html">BOOST_MPL_HAS_XXX_TEMPLATE_NAMED_DEF</a></li>
|
||||
<li><a class="reference internal" href="./has-xxx-trait-def.html">BOOST_MPL_HAS_XXX_TRAIT_DEF</a></li>
|
||||
<li><a class="reference internal" href="./has-xxx-trait-named-def.html">BOOST_MPL_HAS_XXX_TRAIT_NAMED_DEF</a></li>
|
||||
<li><a class="reference internal" href="./limit-list-size.html">BOOST_MPL_LIMIT_LIST_SIZE</a></li>
|
||||
<li><a class="reference internal" href="./limit-map-size.html">BOOST_MPL_LIMIT_MAP_SIZE</a></li>
|
||||
<li><a class="reference internal" href="./limit-metafunction-arity.html">BOOST_MPL_LIMIT_METAFUNCTION_ARITY</a></li>
|
||||
<li><a class="reference internal" href="./limit-set-size.html">BOOST_MPL_LIMIT_SET_SIZE</a></li>
|
||||
<li><a class="reference internal" href="./limit-string-size.html">BOOST_MPL_LIMIT_STRING_SIZE</a></li>
|
||||
<li><a class="reference internal" href="./limit-unrolling.html">BOOST_MPL_LIMIT_UNROLLING</a></li>
|
||||
<li><a class="reference internal" href="./limit-vector-size.html">BOOST_MPL_LIMIT_VECTOR_SIZE</a></li>
|
||||
<li><a class="reference internal" href="./trivial-metafunctions-summary.html">Trivial Metafunctions Summary</a></li>
|
||||
<li><a class="reference internal" href="./placeholders.html">_1</a>, <a class="reference internal" href="./placeholders.html">_2</a>, <a class="reference internal" href="./placeholders.html">_3</a>,<em>...</em></li>
|
||||
<li><a class="reference internal" href="./accumulate.html">accumulate</a></li>
|
||||
<li><a class="reference internal" href="./advance.html">advance</a></li>
|
||||
<li><a class="reference internal" href="./always.html">always</a></li>
|
||||
<li><a class="reference internal" href="./and.html">and_</a></li>
|
||||
<li><a class="reference internal" href="./apply.html">apply</a></li>
|
||||
<li><a class="reference internal" href="./apply-wrap.html">apply_wrap</a></li>
|
||||
<li><a class="reference internal" href="./arg.html">arg</a></li>
|
||||
<li><a class="reference internal" href="./at.html">at</a></li>
|
||||
<li><a class="reference internal" href="./at-c.html">at_c</a></li>
|
||||
<li><a class="reference internal" href="./back.html">back</a></li>
|
||||
<li><a class="reference internal" href="./back-inserter.html">back_inserter</a></li>
|
||||
<li><a class="reference internal" href="./begin.html">begin</a></li>
|
||||
<li><a class="reference internal" href="./bind.html">bind</a></li>
|
||||
<li><a class="reference internal" href="./bitand.html">bitand_</a></li>
|
||||
<li><a class="reference internal" href="./bitor.html">bitor_</a></li>
|
||||
<li><a class="reference internal" href="./bitxor.html">bitxor_</a></li>
|
||||
<li><a class="reference internal" href="./bool.html">bool_</a></li>
|
||||
<li><a class="reference internal" href="./c-str.html">c_str</a></li>
|
||||
<li><a class="reference internal" href="./char.html">char_</a></li>
|
||||
<li><a class="reference internal" href="./clear.html">clear</a></li>
|
||||
<li><a class="reference internal" href="./contains.html">contains</a></li>
|
||||
<li><a class="reference internal" href="./copy.html">copy</a></li>
|
||||
<li><a class="reference internal" href="./copy-if.html">copy_if</a></li>
|
||||
<li><a class="reference internal" href="./count.html">count</a></li>
|
||||
<li><a class="reference internal" href="./count-if.html">count_if</a></li>
|
||||
<li><a class="reference internal" href="./deque.html">deque</a></li>
|
||||
<li><a class="reference internal" href="./deref.html">deref</a></li>
|
||||
<li><a class="reference internal" href="./distance.html">distance</a></li>
|
||||
<li><a class="reference internal" href="./divides.html">divides</a></li>
|
||||
<li><a class="reference internal" href="./empty.html">empty</a></li>
|
||||
<li><a class="reference internal" href="./empty-base.html">empty_base</a></li>
|
||||
<li><a class="reference internal" href="./empty-sequence.html">empty_sequence</a></li>
|
||||
<li><a class="reference internal" href="./end.html">end</a></li>
|
||||
<li><a class="reference internal" href="./equal.html">equal</a></li>
|
||||
<li><a class="reference internal" href="./equal-to.html">equal_to</a></li>
|
||||
<li><a class="reference internal" href="./erase.html">erase</a></li>
|
||||
<li><a class="reference internal" href="./erase-key.html">erase_key</a></li>
|
||||
<li><a class="reference internal" href="./eval-if.html">eval_if</a></li>
|
||||
<li><a class="reference internal" href="./eval-if-c.html">eval_if_c</a></li>
|
||||
<li><a class="reference internal" href="./filter-view.html">filter_view</a></li>
|
||||
<li><a class="reference internal" href="./find.html">find</a></li>
|
||||
<li><a class="reference internal" href="./find-if.html">find_if</a></li>
|
||||
<li><a class="reference internal" href="./fold.html">fold</a></li>
|
||||
<li><a class="reference internal" href="./for-each.html">for_each</a></li>
|
||||
<li><a class="reference internal" href="./front.html">front</a></li>
|
||||
<li><a class="reference internal" href="./front-inserter.html">front_inserter</a></li>
|
||||
<li><a class="reference internal" href="./greater.html">greater</a></li>
|
||||
<li><a class="reference internal" href="./greater-equal.html">greater_equal</a></li>
|
||||
<li><a class="reference internal" href="./has-key.html">has_key</a></li>
|
||||
<li><a class="reference internal" href="./identity.html">identity</a></li>
|
||||
<li><a class="reference internal" href="./if.html">if_</a></li>
|
||||
<li><a class="reference internal" href="./if-c.html">if_c</a></li>
|
||||
<li><a class="reference internal" href="./inherit.html">inherit</a></li>
|
||||
<li><a class="reference internal" href="./inherit-linearly.html">inherit_linearly</a></li>
|
||||
<li><a class="reference internal" href="./insert.html">insert</a></li>
|
||||
<li><a class="reference internal" href="./insert-range.html">insert_range</a></li>
|
||||
<li><a class="reference internal" href="./inserter.html">Inserter</a></li>
|
||||
<li><a class="reference internal" href="./int.html">int_</a></li>
|
||||
<li><a class="reference internal" href="./integral-c.html">integral_c</a></li>
|
||||
<li><a class="reference internal" href="./is-sequence.html">is_sequence</a></li>
|
||||
<li><a class="reference internal" href="./iter-fold.html">iter_fold</a></li>
|
||||
<li><a class="reference internal" href="./iterator-category.html">iterator_category</a></li>
|
||||
<li><a class="reference internal" href="./iterator-range.html">iterator_range</a></li>
|
||||
<li><a class="reference internal" href="./joint-view.html">joint_view</a></li>
|
||||
<li><a class="reference internal" href="./key-type.html">key_type</a></li>
|
||||
<li><a class="reference internal" href="./lambda.html">lambda</a></li>
|
||||
<li><a class="reference internal" href="./less.html">less</a></li>
|
||||
<li><a class="reference internal" href="./less-equal.html">less_equal</a></li>
|
||||
<li><a class="reference internal" href="./list.html">list</a></li>
|
||||
<li><a class="reference internal" href="./list-c.html">list_c</a></li>
|
||||
<li><a class="reference internal" href="./long.html">long_</a></li>
|
||||
<li><a class="reference internal" href="./lower-bound.html">lower_bound</a></li>
|
||||
<li><a class="reference internal" href="./map.html">map</a></li>
|
||||
<li><a class="reference internal" href="./max.html">max</a></li>
|
||||
<li><a class="reference internal" href="./max-element.html">max_element</a></li>
|
||||
<li><a class="reference internal" href="./min.html">min</a></li>
|
||||
<li><a class="reference internal" href="./min-element.html">min_element</a></li>
|
||||
<li><a class="reference internal" href="./minus.html">minus</a></li>
|
||||
<li><a class="reference internal" href="./modulus.html">modulus</a></li>
|
||||
<li><a class="reference internal" href="./negate.html">negate</a></li>
|
||||
<li><a class="reference internal" href="./next.html">next</a></li>
|
||||
<li><a class="reference internal" href="./not.html">not_</a></li>
|
||||
<li><a class="reference internal" href="./not-equal-to.html">not_equal_to</a></li>
|
||||
<li><a class="reference internal" href="./numeric-cast.html">numeric_cast</a></li>
|
||||
<li><a class="reference internal" href="./or.html">or_</a></li>
|
||||
<li><a class="reference internal" href="./order.html">order</a></li>
|
||||
<li><a class="reference internal" href="./pair.html">pair</a></li>
|
||||
<li><a class="reference internal" href="./partition.html">partition</a></li>
|
||||
<li><a class="reference internal" href="./plus.html">plus</a></li>
|
||||
<li><a class="reference internal" href="./pop-back.html">pop_back</a></li>
|
||||
<li><a class="reference internal" href="./pop-front.html">pop_front</a></li>
|
||||
<li><a class="reference internal" href="./prior.html">prior</a></li>
|
||||
<li><a class="reference internal" href="./protect.html">protect</a></li>
|
||||
<li><a class="reference internal" href="./push-back.html">push_back</a></li>
|
||||
<li><a class="reference internal" href="./push-front.html">push_front</a></li>
|
||||
<li><a class="reference internal" href="./quote.html">quote</a></li>
|
||||
<li><a class="reference internal" href="./range-c.html">range_c</a></li>
|
||||
<li><a class="reference internal" href="./remove.html">remove</a></li>
|
||||
<li><a class="reference internal" href="./remove-if.html">remove_if</a></li>
|
||||
<li><a class="reference internal" href="./replace.html">replace</a></li>
|
||||
<li><a class="reference internal" href="./replace-if.html">replace_if</a></li>
|
||||
<li><a class="reference internal" href="./reverse.html">reverse</a></li>
|
||||
<li><a class="reference internal" href="./reverse-copy.html">reverse_copy</a></li>
|
||||
<li><a class="reference internal" href="./reverse-copy-if.html">reverse_copy_if</a></li>
|
||||
<li><a class="reference internal" href="./reverse-fold.html">reverse_fold</a></li>
|
||||
<li><a class="reference internal" href="./reverse-iter-fold.html">reverse_iter_fold</a></li>
|
||||
<li><a class="reference internal" href="./reverse-partition.html">reverse_partition</a></li>
|
||||
<li><a class="reference internal" href="./reverse-remove.html">reverse_remove</a></li>
|
||||
<li><a class="reference internal" href="./reverse-remove-if.html">reverse_remove_if</a></li>
|
||||
<li><a class="reference internal" href="./reverse-replace.html">reverse_replace</a></li>
|
||||
<li><a class="reference internal" href="./reverse-replace-if.html">reverse_replace_if</a></li>
|
||||
<li><a class="reference internal" href="./reverse-stable-partition.html">reverse_stable_partition</a></li>
|
||||
<li><a class="reference internal" href="./reverse-transform.html">reverse_transform</a></li>
|
||||
<li><a class="reference internal" href="./reverse-unique.html">reverse_unique</a></li>
|
||||
<li><a class="reference internal" href="./sequence-tag.html">sequence_tag</a></li>
|
||||
<li><a class="reference internal" href="./set.html">set</a></li>
|
||||
<li><a class="reference internal" href="./set-c.html">set_c</a></li>
|
||||
<li><a class="reference internal" href="./shift-left.html">shift_left</a></li>
|
||||
<li><a class="reference internal" href="./shift-right.html">shift_right</a></li>
|
||||
<li><a class="reference internal" href="./single-view.html">single_view</a></li>
|
||||
<li><a class="reference internal" href="./size.html">size</a></li>
|
||||
<li><a class="reference internal" href="./size-t.html">size_t</a></li>
|
||||
<li><a class="reference internal" href="./sizeof.html">sizeof_</a></li>
|
||||
<li><a class="reference internal" href="./sort.html">sort</a></li>
|
||||
<li><a class="reference internal" href="./stable-partition.html">stable_partition</a></li>
|
||||
<li><a class="reference internal" href="./string.html">string</a></li>
|
||||
<li><a class="reference internal" href="./times.html">times</a></li>
|
||||
<li><a class="reference internal" href="./transform.html">transform</a></li>
|
||||
<li><a class="reference internal" href="./transform-view.html">transform_view</a></li>
|
||||
<li><a class="reference internal" href="./unique.html">unique</a></li>
|
||||
<li><a class="reference internal" href="./unpack-args.html">unpack_args</a></li>
|
||||
<li><a class="reference internal" href="./upper-bound.html">upper_bound</a></li>
|
||||
<li><a class="reference internal" href="./value-type.html">value_type</a></li>
|
||||
<li><a class="reference internal" href="./vector.html">vector</a></li>
|
||||
<li><a class="reference internal" href="./vector-c.html">vector_c</a></li>
|
||||
<li><a class="reference internal" href="./void.html">void_</a></li>
|
||||
<li><a class="reference internal" href="./zip-view.html">zip_view</a></li>
|
||||
</ul>
|
||||
<!-- modtime: November 10, 2004 05:07:51 +0000 -->
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./categorized-concepts.html" class="navigation-link">Prev</a> <a href="./acknowledgements.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./categorized-concepts.html" class="navigation-link">Back</a> Along</span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./categorized-index.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./categorized-index-concepts.html" class="navigation-link">Prev</a> <a href="./acknowledgements.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./categorized-index-concepts.html" class="navigation-link">Back</a> Along</span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./categorized-index.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+14
-16
@@ -1,34 +1,32 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: Composition and Argument Binding</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
<body class="docframe refmanual">
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./unpack-args.html" class="navigation-link">Prev</a> <a href="./placeholders.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./invocation.html" class="navigation-link">Back</a> <a href="./arithmetic-operations.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./metafunctions.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./metafunctions.html" class="navigation-link">Metafunctions</a> / <a href="./composition-and-argument.html" class="navigation-link">Composition and Argument Binding</a></td>
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./metafunctions.html" class="navigation-link">Metafunctions</a> / <a href="./composition-and-argument-binding.html" class="navigation-link">Composition and Argument Binding</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="composition-and-argument">
|
||||
<h1><a class="toc-backref" href="./metafunctions.html#id454" name="composition-and-argument">Composition and Argument Binding</a></h1>
|
||||
<a class="target" id="id217" name="id217"></a><!-- modtime: November 07, 2004 18:47:40 +0000 -->
|
||||
<!-- Metafunctions/Composition and Argument Binding//_1,_2,..._n |10 -->
|
||||
<div class="section" id="composition-and-argument-binding">
|
||||
<h1><a class="toc-backref" href="./metafunctions.html#id1528">Composition and Argument Binding</a></h1>
|
||||
<span class="target" id="label-metafunctions-composition-and-argument-binding"></span><!-- Metafunctions/Composition and Argument Binding//_1,_2,..._n |10 -->
|
||||
<ul class="toc simple" id="outline">
|
||||
<li><a class="reference" href="./placeholders.html" id="id455" name="id455">Placeholders</a></li>
|
||||
<li><a class="reference" href="./lambda.html" id="id456" name="id456">lambda</a></li>
|
||||
<li><a class="reference" href="./bind.html" id="id457" name="id457">bind</a></li>
|
||||
<li><a class="reference" href="./quote.html" id="id458" name="id458">quote</a></li>
|
||||
<li><a class="reference" href="./arg.html" id="id459" name="id459">arg</a></li>
|
||||
<li><a class="reference" href="./protect.html" id="id460" name="id460">protect</a></li>
|
||||
<li><a class="reference internal" href="./placeholders.html" id="id1529">Placeholders</a></li>
|
||||
<li><a class="reference internal" href="./lambda.html" id="id1530">lambda</a></li>
|
||||
<li><a class="reference internal" href="./bind.html" id="id1531">bind</a></li>
|
||||
<li><a class="reference internal" href="./quote.html" id="id1532">quote</a></li>
|
||||
<li><a class="reference internal" href="./arg.html" id="id1533">arg</a></li>
|
||||
<li><a class="reference internal" href="./protect.html" id="id1534">protect</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./unpack-args.html" class="navigation-link">Prev</a> <a href="./placeholders.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./invocation.html" class="navigation-link">Back</a> <a href="./arithmetic-operations.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./metafunctions.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
+22
-24
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: Concepts</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,15 +12,15 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./sequences.html" class="navigation-link">Sequences</a> / <a href="./concepts.html" class="navigation-link">Concepts</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="concepts">
|
||||
<h1><a class="toc-backref" href="./sequences.html#id323" name="concepts">Concepts</a></h1>
|
||||
<a class="target" id="label-sequences-concepts" name="label-sequences-concepts"></a><p>The taxonomy of sequence concepts in MPL parallels the taxonomy of the MPL
|
||||
<a class="reference" href="./iterators.html">Iterators</a>, with two additional classification dimensions:
|
||||
<h1><a class="toc-backref" href="./sequences.html#id1394">Concepts</a></h1>
|
||||
<p id="label-sequences-concepts">The taxonomy of sequence concepts in MPL parallels the taxonomy of the MPL
|
||||
<a class="reference internal" href="./iterators.html">Iterators</a>, with two additional classification dimensions:
|
||||
<cite>extensibility</cite> and <cite>associativeness</cite>.</p>
|
||||
<!-- The latter two are orthogonal to
|
||||
sequence traversal characteristics, but not to each other, meaning that
|
||||
a sequence can be characterized as both `Bidirectional`__
|
||||
and `Back Extensible`__, or `Bidirectional`__ and
|
||||
`Extensible Associative`__, but not as `Bidirectional`__,
|
||||
<!-- The latter two are orthogonal to
|
||||
sequence traversal characteristics, but not to each other, meaning that
|
||||
a sequence can be characterized as both `Bidirectional`__
|
||||
and `Back Extensible`__, or `Bidirectional`__ and
|
||||
`Extensible Associative`__, but not as `Bidirectional`__,
|
||||
`Back Extensible`__ *and* `Extensible Associative`__.
|
||||
|
||||
__ `Bidirectional Sequence`_
|
||||
@@ -38,23 +35,24 @@ __ `Extensible Associative Sequence`_
|
||||
Two utility concepts, |Variadic Sequence| and |Integral Sequence Wrapper|,
|
||||
are not applicable in generic contexts, but are used to group together
|
||||
the common parts of different sequence classes' specifications. -->
|
||||
<!-- modtime: November 05, 2004 05:11:22 +0000 -->
|
||||
<!-- Sequences/Concepts//Forward Sequence |10 -->
|
||||
<ul class="toc simple" id="outline">
|
||||
<li><a class="reference" href="./forward-sequence.html" id="id324" name="id324">Forward Sequence</a></li>
|
||||
<li><a class="reference" href="./bidirectional-sequence.html" id="id325" name="id325">Bidirectional Sequence</a></li>
|
||||
<li><a class="reference" href="./random-access-sequence.html" id="id326" name="id326">Random Access Sequence</a></li>
|
||||
<li><a class="reference" href="./extensible-sequence.html" id="id327" name="id327">Extensible Sequence</a></li>
|
||||
<li><a class="reference" href="./front-extensible-sequence.html" id="id328" name="id328">Front Extensible Sequence</a></li>
|
||||
<li><a class="reference" href="./back-extensible-sequence.html" id="id329" name="id329">Back Extensible Sequence</a></li>
|
||||
<li><a class="reference" href="./associative-sequence.html" id="id330" name="id330">Associative Sequence</a></li>
|
||||
<li><a class="reference" href="./extensible-associative.html" id="id331" name="id331">Extensible Associative Sequence</a></li>
|
||||
<li><a class="reference" href="./integral-sequence-wrapper.html" id="id332" name="id332">Integral Sequence Wrapper</a></li>
|
||||
<li><a class="reference" href="./variadic-sequence.html" id="id333" name="id333">Variadic Sequence</a></li>
|
||||
<li><a class="reference internal" href="./forward-sequence.html" id="id1395">Forward Sequence</a></li>
|
||||
<li><a class="reference internal" href="./bidirectional-sequence.html" id="id1396">Bidirectional Sequence</a></li>
|
||||
<li><a class="reference internal" href="./random-access-sequence.html" id="id1397">Random Access Sequence</a></li>
|
||||
<li><a class="reference internal" href="./extensible-sequence.html" id="id1398">Extensible Sequence</a></li>
|
||||
<li><a class="reference internal" href="./front-extensible-sequence.html" id="id1399">Front Extensible Sequence</a></li>
|
||||
<li><a class="reference internal" href="./back-extensible-sequence.html" id="id1400">Back Extensible Sequence</a></li>
|
||||
<li><a class="reference internal" href="./associative-sequence.html" id="id1401">Associative Sequence</a></li>
|
||||
<li><a class="reference internal" href="./extensible-associative-sequence.html" id="id1402">Extensible Associative Sequence</a></li>
|
||||
<li><a class="reference internal" href="./integral-sequence-wrapper.html" id="id1403">Integral Sequence Wrapper</a></li>
|
||||
<li><a class="reference internal" href="./variadic-sequence.html" id="id1404">Variadic Sequence</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./sequences.html" class="navigation-link">Prev</a> <a href="./forward-sequence.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group">Back <a href="./classes.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./sequences.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
@@ -1,36 +1,36 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: Configuration</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
<body class="docframe refmanual">
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./has-xxx-trait-named-def.html" class="navigation-link">Prev</a> <a href="./cfg-no-preprocessed.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./introspection.html" class="navigation-link">Back</a> <a href="./broken-compiler.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./macros.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./has-xxx-trait-named-def.html" class="navigation-link">Prev</a> <a href="./cfg-no-preprocessed-headers.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./introspection.html" class="navigation-link">Back</a> <a href="./broken-compiler-workarounds.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./macros.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./macros.html" class="navigation-link">Macros</a> / <a href="./configuration.html" class="navigation-link">Configuration</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="configuration">
|
||||
<h1><a class="toc-backref" href="./macros.html#id518" name="configuration">Configuration</a></h1>
|
||||
<a class="target" id="id293" name="id293"></a><!-- modtime: November 04, 2004 12:12:12 +0000 -->
|
||||
<!-- Macros/Configuration//BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS |10 -->
|
||||
<h1><a class="toc-backref" href="./macros.html#id1597">Configuration</a></h1>
|
||||
<span class="target" id="label-macros-configuration"></span><!-- Macros/Configuration//BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS |10 -->
|
||||
<ul class="toc simple" id="outline">
|
||||
<li><a class="reference" href="./cfg-no-preprocessed.html" id="id519" name="id519">BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS</a></li>
|
||||
<li><a class="reference" href="./cfg-no-has-xxx.html" id="id520" name="id520">BOOST_MPL_CFG_NO_HAS_XXX</a></li>
|
||||
<li><a class="reference" href="./limit-metafunction-arity.html" id="id521" name="id521">BOOST_MPL_LIMIT_METAFUNCTION_ARITY</a></li>
|
||||
<li><a class="reference" href="./limit-vector-size.html" id="id522" name="id522">BOOST_MPL_LIMIT_VECTOR_SIZE</a></li>
|
||||
<li><a class="reference" href="./limit-list-size.html" id="id523" name="id523">BOOST_MPL_LIMIT_LIST_SIZE</a></li>
|
||||
<li><a class="reference" href="./limit-set-size.html" id="id524" name="id524">BOOST_MPL_LIMIT_SET_SIZE</a></li>
|
||||
<li><a class="reference" href="./limit-map-size.html" id="id525" name="id525">BOOST_MPL_LIMIT_MAP_SIZE</a></li>
|
||||
<li><a class="reference" href="./limit-unrolling.html" id="id526" name="id526">BOOST_MPL_LIMIT_UNROLLING</a></li>
|
||||
<li><a class="reference internal" href="./cfg-no-preprocessed-headers.html" id="id1598">BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS</a></li>
|
||||
<li><a class="reference internal" href="./cfg-no-has-xxx.html" id="id1599">BOOST_MPL_CFG_NO_HAS_XXX</a></li>
|
||||
<li><a class="reference internal" href="./cfg-no-has-xxx-template.html" id="id1600">BOOST_MPL_CFG_NO_HAS_XXX_TEMPLATE</a></li>
|
||||
<li><a class="reference internal" href="./limit-metafunction-arity.html" id="id1601">BOOST_MPL_LIMIT_METAFUNCTION_ARITY</a></li>
|
||||
<li><a class="reference internal" href="./limit-vector-size.html" id="id1602">BOOST_MPL_LIMIT_VECTOR_SIZE</a></li>
|
||||
<li><a class="reference internal" href="./limit-list-size.html" id="id1603">BOOST_MPL_LIMIT_LIST_SIZE</a></li>
|
||||
<li><a class="reference internal" href="./limit-set-size.html" id="id1604">BOOST_MPL_LIMIT_SET_SIZE</a></li>
|
||||
<li><a class="reference internal" href="./limit-map-size.html" id="id1605">BOOST_MPL_LIMIT_MAP_SIZE</a></li>
|
||||
<li><a class="reference internal" href="./limit-string-size.html" id="id1606">BOOST_MPL_LIMIT_STRING_SIZE</a></li>
|
||||
<li><a class="reference internal" href="./limit-unrolling.html" id="id1607">BOOST_MPL_LIMIT_UNROLLING</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./has-xxx-trait-named-def.html" class="navigation-link">Prev</a> <a href="./cfg-no-preprocessed.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./introspection.html" class="navigation-link">Back</a> <a href="./broken-compiler.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./macros.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./has-xxx-trait-named-def.html" class="navigation-link">Prev</a> <a href="./cfg-no-preprocessed-headers.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./introspection.html" class="navigation-link">Back</a> <a href="./broken-compiler-workarounds.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./macros.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+25
-26
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: contains</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,8 +12,8 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./algorithms.html" class="navigation-link">Algorithms</a> / <a href="./querying-algorithms.html" class="navigation-link">Querying Algorithms</a> / <a href="./contains.html" class="navigation-link">contains</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="contains">
|
||||
<h1><a class="toc-backref" href="./querying-algorithms.html#id405" name="contains">contains</a></h1>
|
||||
<div class="section" id="contains-synopsis">
|
||||
<h1><a class="toc-backref" href="./querying-algorithms.html#id1477">contains</a></h1>
|
||||
<div class="section" id="id551">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
@@ -29,34 +26,34 @@ struct <a href="./contains.html" class="identifier">contains</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="contains-description">
|
||||
<div class="section" id="id552">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Returns a true-valued <a class="reference" href="./integral-constant.html">Integral Constant</a> if one or more elements in <tt class="literal"><span class="pre">Sequence</span></tt>
|
||||
<p>Returns a true-valued <a class="reference internal" href="./integral-constant.html">Integral Constant</a> if one or more elements in <tt class="literal"><span class="pre">Sequence</span></tt>
|
||||
are identical to <tt class="literal"><span class="pre">T</span></tt>.</p>
|
||||
</div>
|
||||
<div class="section" id="contains-header">
|
||||
<div class="section" id="id553">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/contains.hpp" class="header">boost/mpl/contains.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="contains-parameters">
|
||||
<div class="section" id="id554">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="19%" />
|
||||
<col width="35%" />
|
||||
<col width="45%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">Sequence</span></tt></td>
|
||||
<td><a class="reference" href="./forward-sequence.html">Forward Sequence</a></td>
|
||||
<td><a class="reference internal" href="./forward-sequence.html">Forward Sequence</a></td>
|
||||
<td>A sequence to be examined.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre">T</span></tt></td>
|
||||
@@ -66,21 +63,22 @@ are identical to <tt class="literal"><span class="pre">T</span></tt>.</p>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="contains-expression-semantics">
|
||||
<div class="section" id="id555">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For any <a class="reference" href="./forward-sequence.html">Forward Sequence</a> <tt class="literal"><span class="pre">s</span></tt> and arbitrary type <tt class="literal"><span class="pre">t</span></tt>:</p>
|
||||
<p>For any <a class="reference internal" href="./forward-sequence.html">Forward Sequence</a> <tt class="literal"><span class="pre">s</span></tt> and arbitrary type <tt class="literal"><span class="pre">t</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./contains.html" class="identifier">contains</a><s,t>::type r;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference" href="./integral-constant.html">Integral Constant</a>.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><a class="reference internal" href="./integral-constant.html">Integral Constant</a>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Equivalent to</p>
|
||||
<pre class="last literal-block">
|
||||
typedef <a href="./not.html" class="identifier">not_</a>< is_same<
|
||||
typedef <a href="./not.html" class="identifier">not_</a>< is_same<
|
||||
<a href="./find.html" class="identifier">find</a><s,t>::type
|
||||
, <a href="./end.html" class="identifier">end</a><s>::type
|
||||
> >::type r;
|
||||
@@ -90,26 +88,27 @@ typedef <a href="./not.html" class="identifier">not_</a>< is_same<
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="contains-complexity">
|
||||
<div class="section" id="id556">
|
||||
<h3><a class="subsection-title" href="#complexity" name="complexity">Complexity</a></h3>
|
||||
<p>Linear. At most <tt class="literal"><span class="pre"><a href="./size.html" class="identifier">size</a><s>::value</span></tt> comparisons for identity.</p>
|
||||
</div>
|
||||
<div class="section" id="contains-example">
|
||||
<div class="section" id="id557">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./vector.html" class="identifier">vector</a><char,int,unsigned,long,unsigned long> types;
|
||||
<a href="./assert-not.html" class="identifier">BOOST_MPL_ASSERT_NOT</a>(( <a href="./contains.html" class="identifier">contains</a><types,bool> ));
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="contains-see-also">
|
||||
<div class="section" id="id558">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./querying-algorithms.html">Querying Algorithms</a>, <a class="refentry reference" href="./find.html"><tt class="refentry literal"><span class="pre">find</span></tt></a>, <a class="refentry reference" href="./find-if.html"><tt class="refentry literal"><span class="pre">find_if</span></tt></a>, <a class="refentry reference" href="./count.html"><tt class="refentry literal"><span class="pre">count</span></tt></a>, <a class="refentry reference" href="./lower-bound.html"><tt class="refentry literal"><span class="pre">lower_bound</span></tt></a></p>
|
||||
<!-- modtime: November 13, 2004 01:52:38 +0000 -->
|
||||
<p><a class="reference internal" href="./querying-algorithms.html">Querying Algorithms</a>, <a class="reference internal" href="./find.html">find</a>, <a class="reference internal" href="./find-if.html">find_if</a>, <a class="reference internal" href="./count.html">count</a>, <a class="reference internal" href="./lower-bound.html">lower_bound</a></p>
|
||||
<!-- Algorithms/Querying Algorithms//count |40 -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./find-if.html" class="navigation-link">Prev</a> <a href="./count.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./find-if.html" class="navigation-link">Back</a> <a href="./count.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./querying-algorithms.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+38
-39
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: copy_if</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,8 +12,8 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./algorithms.html" class="navigation-link">Algorithms</a> / <a href="./transformation-algorithms.html" class="navigation-link">Transformation Algorithms</a> / <a href="./copy-if.html" class="navigation-link">copy_if</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="copy-if">
|
||||
<h1><a class="toc-backref" href="./transformation-algorithms.html#id415" name="copy-if">copy_if</a></h1>
|
||||
<div class="section" id="transformation-copy-synopsis">
|
||||
<h1><a class="toc-backref" href="./transformation-algorithms.html#id1487">copy_if</a></h1>
|
||||
<div class="section" id="id624">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
@@ -30,68 +27,69 @@ struct <a href="./copy-if.html" class="identifier">copy_if</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="transformation-copy-description">
|
||||
<div class="section" id="id625">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Returns a filtered copy of the original sequence containing the elements that satisfy
|
||||
<p>Returns a filtered copy of the original sequence containing the elements that satisfy
|
||||
the predicate <tt class="literal"><span class="pre">Pred</span></tt>.</p>
|
||||
<p>[<em>Note:</em> This wording applies to a no-inserter version(s) of the algorithm. See the
|
||||
<cite>Expression semantics</cite> subsection for a precise specification of the algorithm's
|
||||
<p>[<em>Note:</em> This wording applies to a no-inserter version(s) of the algorithm. See the
|
||||
<cite>Expression semantics</cite> subsection for a precise specification of the algorithm's
|
||||
details in all cases — <em>end note</em>]</p>
|
||||
</div>
|
||||
<div class="section" id="transformation-copy-header">
|
||||
<div class="section" id="id626">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/copy_if.hpp" class="header">boost/mpl/copy_if.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="transformation-copy-model-of">
|
||||
<div class="section" id="id627">
|
||||
<h3><a class="subsection-title" href="#model-of" name="model-of">Model of</a></h3>
|
||||
<p><a class="reference" href="./reversible-algorithm.html">Reversible Algorithm</a></p>
|
||||
<p><a class="reference internal" href="./reversible-algorithm.html">Reversible Algorithm</a></p>
|
||||
</div>
|
||||
<div class="section" id="transformation-copy-parameters">
|
||||
<div class="section" id="id628">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="19%" />
|
||||
<col width="40%" />
|
||||
<col width="40%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">Sequence</span></tt></td>
|
||||
<td><a class="reference" href="./forward-sequence.html">Forward Sequence</a></td>
|
||||
<td><a class="reference internal" href="./forward-sequence.html">Forward Sequence</a></td>
|
||||
<td>A sequence to copy.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre">Pred</span></tt></td>
|
||||
<td>Unary <a class="reference" href="./lambda-expression.html">Lambda Expression</a></td>
|
||||
<td>Unary <a class="reference internal" href="./lambda-expression.html">Lambda Expression</a></td>
|
||||
<td>A copying condition.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre">In</span></tt></td>
|
||||
<td><a class="reference" href="./inserter.html">Inserter</a></td>
|
||||
<td><a class="reference internal" href="./inserter.html">Inserter</a></td>
|
||||
<td>An inserter.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="transformation-copy-expression-semantics">
|
||||
<div class="section" id="id629">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>The semantics of an expression are defined only
|
||||
where they differ from, or are not defined in <a class="reference" href="./reversible-algorithm.html">Reversible Algorithm</a>.</p>
|
||||
<p>For any <a class="reference" href="./forward-sequence.html">Forward Sequence</a> <tt class="literal"><span class="pre">s</span></tt>, an unary <a class="reference" href="./lambda-expression.html">Lambda Expression</a> <tt class="literal"><span class="pre">pred</span></tt>, and
|
||||
an <a class="reference" href="./inserter.html">Inserter</a> <tt class="literal"><span class="pre">in</span></tt>:</p>
|
||||
where they differ from, or are not defined in <a class="reference internal" href="./reversible-algorithm.html">Reversible Algorithm</a>.</p>
|
||||
<p>For any <a class="reference internal" href="./forward-sequence.html">Forward Sequence</a> <tt class="literal"><span class="pre">s</span></tt>, an unary <a class="reference internal" href="./lambda-expression.html">Lambda Expression</a> <tt class="literal"><span class="pre">pred</span></tt>, and
|
||||
an <a class="reference internal" href="./inserter.html">Inserter</a> <tt class="literal"><span class="pre">in</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./copy-if.html" class="identifier">copy_if</a><s,pred,in>::type r;
|
||||
typedef <a href="./copy-if.html" class="identifier">copy_if</a><s,pred,in>::type r;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body">A type.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first">A type.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Equivalent to</p>
|
||||
<pre class="last literal-block">
|
||||
@@ -102,9 +100,9 @@ typedef <a href="./fold.html" class="identifier">fold</a><
|
||||
s
|
||||
, in::state
|
||||
, <a href="./eval-if.html" class="identifier">eval_if</a><
|
||||
<a href="./apply-wrap.html" class="identifier">apply_wrap</a><tt class="literal"><span class="pre">1</span></tt><p,_2>
|
||||
, <a href="./apply-wrap.html" class="identifier">apply_wrap</a><tt class="literal"><span class="pre">2</span></tt><op,_1,_2>
|
||||
, <a href="./identity.html" class="identifier">identity</a><_1>
|
||||
<a href="./apply-wrap.html" class="identifier">apply_wrap</a><tt class="literal"><span class="pre">1</span></tt><p,<a href="./placeholders.html" class="identifier">_2</a>>
|
||||
, <a href="./apply-wrap.html" class="identifier">apply_wrap</a><tt class="literal"><span class="pre">2</span></tt><op,<a href="./placeholders.html" class="identifier">_1</a>,<a href="./placeholders.html" class="identifier">_2</a>>
|
||||
, <a href="./identity.html" class="identifier">identity</a><<a href="./placeholders.html" class="identifier">_1</a>>
|
||||
>
|
||||
>::type r;
|
||||
</pre>
|
||||
@@ -113,17 +111,17 @@ typedef <a href="./fold.html" class="identifier">fold</a><
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="transformation-copy-complexity">
|
||||
<div class="section" id="id630">
|
||||
<h3><a class="subsection-title" href="#complexity" name="complexity">Complexity</a></h3>
|
||||
<p>Linear. Exactly <tt class="literal"><span class="pre"><a href="./size.html" class="identifier">size</a><s>::value</span></tt> applications of <tt class="literal"><span class="pre">pred</span></tt>, and at
|
||||
<p>Linear. Exactly <tt class="literal"><span class="pre"><a href="./size.html" class="identifier">size</a><s>::value</span></tt> applications of <tt class="literal"><span class="pre">pred</span></tt>, and at
|
||||
most <tt class="literal"><span class="pre"><a href="./size.html" class="identifier">size</a><s>::value</span></tt> applications of <tt class="literal"><span class="pre">in::operation</span></tt>.</p>
|
||||
</div>
|
||||
<div class="section" id="transformation-copy-example">
|
||||
<div class="section" id="id631">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./copy-if.html" class="identifier">copy_if</a><
|
||||
<a href="./range-c.html" class="identifier">range_c</a><int,0,10>
|
||||
, <a href="./less.html" class="identifier">less</a>< _1, <a href="./int.html" class="identifier">int_</a><5> >
|
||||
, <a href="./less.html" class="identifier">less</a>< <a href="./placeholders.html" class="identifier">_1</a>, <a href="./int.html" class="identifier">int_</a><5> >
|
||||
, <a href="./back-inserter.html" class="identifier">back_inserter</a>< <a href="./vector.html" class="identifier">vector</a><> >
|
||||
>::type result;
|
||||
|
||||
@@ -131,15 +129,16 @@ typedef <a href="./copy-if.html" class="identifier">copy_if</a><
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( <a href="./equal.html" class="identifier">equal</a><result,<a href="./range-c.html" class="identifier">range_c</a><int,0,5> > ));
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="transformation-copy-see-also">
|
||||
<div class="section" id="id632">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./transformation-algorithms.html">Transformation Algorithms</a>, <a class="reference" href="./reversible-algorithm.html">Reversible Algorithm</a>, <a class="refentry reference" href="./reverse-copy-if.html"><tt class="refentry literal"><span class="pre">reverse_copy_if</span></tt></a>, <a class="refentry reference" href="./copy.html"><tt class="refentry literal"><span class="pre">copy</span></tt></a>, <a class="refentry reference" href="./remove-if.html"><tt class="refentry literal"><span class="pre">remove_if</span></tt></a>, <a class="refentry reference" href="./replace-if.html"><tt class="refentry literal"><span class="pre">replace_if</span></tt></a></p>
|
||||
<!-- modtime: November 13, 2004 01:54:56 +0000 -->
|
||||
<p><a class="reference internal" href="./transformation-algorithms.html">Transformation Algorithms</a>, <a class="reference internal" href="./reversible-algorithm.html">Reversible Algorithm</a>, <a class="reference internal" href="./reverse-copy-if.html">reverse_copy_if</a>, <a class="reference internal" href="./copy.html">copy</a>, <a class="reference internal" href="./remove-if.html">remove_if</a>, <a class="reference internal" href="./replace-if.html">replace_if</a></p>
|
||||
<!-- Algorithms/Transformation Algorithms//transform |30 -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./copy.html" class="navigation-link">Prev</a> <a href="./transform.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./copy.html" class="navigation-link">Back</a> <a href="./transform.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./transformation-algorithms.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+30
-31
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: copy</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,8 +12,8 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./algorithms.html" class="navigation-link">Algorithms</a> / <a href="./transformation-algorithms.html" class="navigation-link">Transformation Algorithms</a> / <a href="./copy.html" class="navigation-link">copy</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="copy">
|
||||
<h1><a class="toc-backref" href="./transformation-algorithms.html#id414" name="copy">copy</a></h1>
|
||||
<div class="section" id="copy-synopsis">
|
||||
<h1><a class="toc-backref" href="./transformation-algorithms.html#id1486">copy</a></h1>
|
||||
<div class="section" id="id615">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
@@ -29,62 +26,63 @@ struct <a href="./copy.html" class="identifier">copy</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="copy-description">
|
||||
<div class="section" id="id616">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Returns a copy of the original sequence.</p>
|
||||
<p>[<em>Note:</em> This wording applies to a no-inserter version(s) of the algorithm. See the
|
||||
<cite>Expression semantics</cite> subsection for a precise specification of the algorithm's
|
||||
<p>[<em>Note:</em> This wording applies to a no-inserter version(s) of the algorithm. See the
|
||||
<cite>Expression semantics</cite> subsection for a precise specification of the algorithm's
|
||||
details in all cases — <em>end note</em>]</p>
|
||||
</div>
|
||||
<div class="section" id="copy-header">
|
||||
<div class="section" id="id617">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/copy.hpp" class="header">boost/mpl/copy.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="copy-model-of">
|
||||
<div class="section" id="id618">
|
||||
<h3><a class="subsection-title" href="#model-of" name="model-of">Model of</a></h3>
|
||||
<p><a class="reference" href="./reversible-algorithm.html">Reversible Algorithm</a></p>
|
||||
<p><a class="reference internal" href="./reversible-algorithm.html">Reversible Algorithm</a></p>
|
||||
</div>
|
||||
<div class="section" id="copy-parameters">
|
||||
<div class="section" id="id619">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="21%" />
|
||||
<col width="37%" />
|
||||
<col width="42%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">Sequence</span></tt></td>
|
||||
<td><a class="reference" href="./forward-sequence.html">Forward Sequence</a></td>
|
||||
<td><a class="reference internal" href="./forward-sequence.html">Forward Sequence</a></td>
|
||||
<td>A sequence to copy.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre">In</span></tt></td>
|
||||
<td><a class="reference" href="./inserter.html">Inserter</a></td>
|
||||
<td><a class="reference internal" href="./inserter.html">Inserter</a></td>
|
||||
<td>An inserter.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="copy-expression-semantics">
|
||||
<div class="section" id="id620">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>The semantics of an expression are defined only
|
||||
where they differ from, or are not defined in <a class="reference" href="./reversible-algorithm.html">Reversible Algorithm</a>.</p>
|
||||
<p>For any <a class="reference" href="./forward-sequence.html">Forward Sequence</a> <tt class="literal"><span class="pre">s</span></tt>, and an <a class="reference" href="./inserter.html">Inserter</a> <tt class="literal"><span class="pre">in</span></tt>:</p>
|
||||
where they differ from, or are not defined in <a class="reference internal" href="./reversible-algorithm.html">Reversible Algorithm</a>.</p>
|
||||
<p>For any <a class="reference internal" href="./forward-sequence.html">Forward Sequence</a> <tt class="literal"><span class="pre">s</span></tt>, and an <a class="reference internal" href="./inserter.html">Inserter</a> <tt class="literal"><span class="pre">in</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./copy.html" class="identifier">copy</a><s,in>::type r;
|
||||
typedef <a href="./copy.html" class="identifier">copy</a><s,in>::type r;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body">A type.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first">A type.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Equivalent to</p>
|
||||
<pre class="last literal-block">
|
||||
@@ -95,11 +93,11 @@ typedef <a href="./fold.html" class="identifier">fold</a>< s,in::state,in::op
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="copy-complexity">
|
||||
<div class="section" id="id621">
|
||||
<h3><a class="subsection-title" href="#complexity" name="complexity">Complexity</a></h3>
|
||||
<p>Linear. Exactly <tt class="literal"><span class="pre"><a href="./size.html" class="identifier">size</a><s>::value</span></tt> applications of <tt class="literal"><span class="pre">in::operation</span></tt>.</p>
|
||||
</div>
|
||||
<div class="section" id="copy-example">
|
||||
<div class="section" id="id622">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./vector-c.html" class="identifier">vector_c</a><int,0,1,2,3,4,5,6,7,8,9> numbers;
|
||||
@@ -112,15 +110,16 @@ typedef <a href="./copy.html" class="identifier">copy</a><
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( <a href="./equal.html" class="identifier">equal</a>< result,<a href="./range-c.html" class="identifier">range_c</a><int,0,20> > ));
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="copy-see-also">
|
||||
<div class="section" id="id623">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./transformation-algorithms.html">Transformation Algorithms</a>, <a class="reference" href="./reversible-algorithm.html">Reversible Algorithm</a>, <a class="refentry reference" href="./reverse-copy.html"><tt class="refentry literal"><span class="pre">reverse_copy</span></tt></a>, <a class="refentry reference" href="./copy-if.html"><tt class="refentry literal"><span class="pre">copy_if</span></tt></a>, <a class="refentry reference" href="./transform.html"><tt class="refentry literal"><span class="pre">transform</span></tt></a></p>
|
||||
<!-- modtime: November 13, 2004 01:54:21 +0000 -->
|
||||
<p><a class="reference internal" href="./transformation-algorithms.html">Transformation Algorithms</a>, <a class="reference internal" href="./reversible-algorithm.html">Reversible Algorithm</a>, <a class="reference internal" href="./reverse-copy.html">reverse_copy</a>, <a class="reference internal" href="./copy-if.html">copy_if</a>, <a class="reference internal" href="./transform.html">transform</a></p>
|
||||
<!-- Algorithms/Transformation Algorithms//copy_if |20 -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./transformation-algorithms.html" class="navigation-link">Prev</a> <a href="./copy-if.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group">Back <a href="./copy-if.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./transformation-algorithms.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+28
-29
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: count_if</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,8 +12,8 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./algorithms.html" class="navigation-link">Algorithms</a> / <a href="./querying-algorithms.html" class="navigation-link">Querying Algorithms</a> / <a href="./count-if.html" class="navigation-link">count_if</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="count-if">
|
||||
<h1><a class="toc-backref" href="./querying-algorithms.html#id407" name="count-if">count_if</a></h1>
|
||||
<div class="section" id="querying-count-synopsis">
|
||||
<h1><a class="toc-backref" href="./querying-algorithms.html#id1479">count_if</a></h1>
|
||||
<div class="section" id="id567">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
@@ -29,61 +26,62 @@ struct <a href="./count-if.html" class="identifier">count_if</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="querying-count-description">
|
||||
<div class="section" id="id568">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Returns the number of elements in <tt class="literal"><span class="pre">Sequence</span></tt> that satisfy the predicate <tt class="literal"><span class="pre">Pred</span></tt>.</p>
|
||||
</div>
|
||||
<div class="section" id="querying-count-header">
|
||||
<div class="section" id="id569">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/count_if.hpp" class="header">boost/mpl/count_if.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="querying-count-parameters">
|
||||
<div class="section" id="id570">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="19%" />
|
||||
<col width="38%" />
|
||||
<col width="43%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">Sequence</span></tt></td>
|
||||
<td><a class="reference" href="./forward-sequence.html">Forward Sequence</a></td>
|
||||
<td><a class="reference internal" href="./forward-sequence.html">Forward Sequence</a></td>
|
||||
<td>A sequence to be examined.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre">Pred</span></tt></td>
|
||||
<td>Unary <a class="reference" href="./lambda-expression.html">Lambda Expression</a></td>
|
||||
<td>Unary <a class="reference internal" href="./lambda-expression.html">Lambda Expression</a></td>
|
||||
<td>A count condition.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="querying-count-expression-semantics">
|
||||
<div class="section" id="id571">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For any <a class="reference" href="./forward-sequence.html">Forward Sequence</a> <tt class="literal"><span class="pre">s</span></tt> and unary <a class="reference" href="./lambda-expression.html">Lambda Expression</a> <tt class="literal"><span class="pre">pred</span></tt>:</p>
|
||||
<p>For any <a class="reference internal" href="./forward-sequence.html">Forward Sequence</a> <tt class="literal"><span class="pre">s</span></tt> and unary <a class="reference internal" href="./lambda-expression.html">Lambda Expression</a> <tt class="literal"><span class="pre">pred</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./count-if.html" class="identifier">count_if</a><s,pred>::type n;
|
||||
typedef <a href="./count-if.html" class="identifier">count_if</a><s,pred>::type n;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference" href="./integral-constant.html">Integral Constant</a>.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><a class="reference internal" href="./integral-constant.html">Integral Constant</a>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Equivalent to</p>
|
||||
<pre class="last literal-block">
|
||||
typedef <a href="./lambda.html" class="identifier">lambda</a><pred>::type p;
|
||||
typedef <a href="./fold.html" class="identifier">fold</a><
|
||||
typedef <a href="./fold.html" class="identifier">fold</a><
|
||||
s
|
||||
, <a href="./long.html" class="identifier">long_</a><0>
|
||||
, <a href="./if.html" class="identifier">if_</a>< <a href="./apply-wrap.html" class="identifier">apply_wrap</a><tt class="literal"><span class="pre">1</span></tt><p,_2>, <a href="./next.html" class="identifier">next</a><_1>, _1 >
|
||||
, <a href="./if.html" class="identifier">if_</a>< <a href="./apply-wrap.html" class="identifier">apply_wrap</a><tt class="literal"><span class="pre">1</span></tt><p,<a href="./placeholders.html" class="identifier">_2</a>>, <a href="./next.html" class="identifier">next</a><<a href="./placeholders.html" class="identifier">_1</a>>, <a href="./placeholders.html" class="identifier">_1</a> >
|
||||
>::type n;
|
||||
</pre>
|
||||
</td>
|
||||
@@ -91,29 +89,30 @@ typedef <a href="./fold.html" class="identifier">fold</a><
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="querying-count-complexity">
|
||||
<div class="section" id="id572">
|
||||
<h3><a class="subsection-title" href="#complexity" name="complexity">Complexity</a></h3>
|
||||
<p>Linear. Exactly <tt class="literal"><span class="pre"><a href="./size.html" class="identifier">size</a><s>::value</span></tt> applications of <tt class="literal"><span class="pre">pred</span></tt>.</p>
|
||||
</div>
|
||||
<div class="section" id="querying-count-example">
|
||||
<div class="section" id="id573">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./vector.html" class="identifier">vector</a><int,char,long,short,char,long,double,long> types;
|
||||
|
||||
|
||||
<a href="./assert-relation.html" class="identifier">BOOST_MPL_ASSERT_RELATION</a>( (<a href="./count-if.html" class="identifier">count_if</a>< types, is_float<_> >::value), ==, 1 );
|
||||
<a href="./assert-relation.html" class="identifier">BOOST_MPL_ASSERT_RELATION</a>( (<a href="./count-if.html" class="identifier">count_if</a>< types, is_same<_,char> >::value), ==, 2 );
|
||||
<a href="./assert-relation.html" class="identifier">BOOST_MPL_ASSERT_RELATION</a>( (<a href="./count-if.html" class="identifier">count_if</a>< types, is_same<_,void> >::value), ==, 0 );
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="querying-count-see-also">
|
||||
<div class="section" id="id574">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./querying-algorithms.html">Querying Algorithms</a>, <a class="refentry reference" href="./count.html"><tt class="refentry literal"><span class="pre">count</span></tt></a>, <a class="refentry reference" href="./find.html"><tt class="refentry literal"><span class="pre">find</span></tt></a>, <a class="refentry reference" href="./find-if.html"><tt class="refentry literal"><span class="pre">find_if</span></tt></a>, <a class="refentry reference" href="./contains.html"><tt class="refentry literal"><span class="pre">contains</span></tt></a></p>
|
||||
<!-- modtime: November 10, 2004 04:43:18 +0000 -->
|
||||
<p><a class="reference internal" href="./querying-algorithms.html">Querying Algorithms</a>, <a class="reference internal" href="./count.html">count</a>, <a class="reference internal" href="./find.html">find</a>, <a class="reference internal" href="./find-if.html">find_if</a>, <a class="reference internal" href="./contains.html">contains</a></p>
|
||||
<!-- Algorithms/Querying Algorithms//lower_bound |60 -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./count.html" class="navigation-link">Prev</a> <a href="./lower-bound.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./count.html" class="navigation-link">Back</a> <a href="./lower-bound.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./querying-algorithms.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+23
-24
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: count</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,8 +12,8 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./algorithms.html" class="navigation-link">Algorithms</a> / <a href="./querying-algorithms.html" class="navigation-link">Querying Algorithms</a> / <a href="./count.html" class="navigation-link">count</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="count">
|
||||
<h1><a class="toc-backref" href="./querying-algorithms.html#id406" name="count">count</a></h1>
|
||||
<div class="section" id="count-synopsis">
|
||||
<h1><a class="toc-backref" href="./querying-algorithms.html#id1478">count</a></h1>
|
||||
<div class="section" id="id559">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
@@ -29,33 +26,33 @@ struct <a href="./count.html" class="identifier">count</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="count-description">
|
||||
<div class="section" id="id560">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Returns the number of elements in a <tt class="literal"><span class="pre">Sequence</span></tt> that are identical to <tt class="literal"><span class="pre">T</span></tt>.</p>
|
||||
</div>
|
||||
<div class="section" id="count-header">
|
||||
<div class="section" id="id561">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/count.hpp" class="header">boost/mpl/count.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="count-parameters">
|
||||
<div class="section" id="id562">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="19%" />
|
||||
<col width="35%" />
|
||||
<col width="45%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">Sequence</span></tt></td>
|
||||
<td><a class="reference" href="./forward-sequence.html">Forward Sequence</a></td>
|
||||
<td><a class="reference internal" href="./forward-sequence.html">Forward Sequence</a></td>
|
||||
<td>A sequence to be examined.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre">T</span></tt></td>
|
||||
@@ -65,17 +62,18 @@ struct <a href="./count.html" class="identifier">count</a>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="count-expression-semantics">
|
||||
<div class="section" id="id563">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For any <a class="reference" href="./forward-sequence.html">Forward Sequence</a> <tt class="literal"><span class="pre">s</span></tt> and arbitrary type <tt class="literal"><span class="pre">t</span></tt>:</p>
|
||||
<p>For any <a class="reference internal" href="./forward-sequence.html">Forward Sequence</a> <tt class="literal"><span class="pre">s</span></tt> and arbitrary type <tt class="literal"><span class="pre">t</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./count.html" class="identifier">count</a><s,t>::type n;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference" href="./integral-constant.html">Integral Constant</a>.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><a class="reference internal" href="./integral-constant.html">Integral Constant</a>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Equivalent to</p>
|
||||
<pre class="last literal-block">
|
||||
@@ -86,11 +84,11 @@ typedef <a href="./count-if.html" class="identifier">count_if</a>< s,is_same&
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="count-complexity">
|
||||
<div class="section" id="id564">
|
||||
<h3><a class="subsection-title" href="#complexity" name="complexity">Complexity</a></h3>
|
||||
<p>Linear. Exactly <tt class="literal"><span class="pre"><a href="./size.html" class="identifier">size</a><s>::value</span></tt> comparisons for identity.</p>
|
||||
</div>
|
||||
<div class="section" id="count-example">
|
||||
<div class="section" id="id565">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./vector.html" class="identifier">vector</a><int,char,long,short,char,short,double,long> types;
|
||||
@@ -99,15 +97,16 @@ typedef <a href="./count.html" class="identifier">count</a><types, short>:
|
||||
<a href="./assert-relation.html" class="identifier">BOOST_MPL_ASSERT_RELATION</a>( n::value, ==, 2 );
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="count-see-also">
|
||||
<div class="section" id="id566">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./querying-algorithms.html">Querying Algorithms</a>, <a class="refentry reference" href="./count-if.html"><tt class="refentry literal"><span class="pre">count_if</span></tt></a>, <a class="refentry reference" href="./find.html"><tt class="refentry literal"><span class="pre">find</span></tt></a>, <a class="refentry reference" href="./find-if.html"><tt class="refentry literal"><span class="pre">find_if</span></tt></a>, <a class="refentry reference" href="./contains.html"><tt class="refentry literal"><span class="pre">contains</span></tt></a>, <a class="refentry reference" href="./lower-bound.html"><tt class="refentry literal"><span class="pre">lower_bound</span></tt></a></p>
|
||||
<!-- modtime: November 13, 2004 01:52:16 +0000 -->
|
||||
<p><a class="reference internal" href="./querying-algorithms.html">Querying Algorithms</a>, <a class="reference internal" href="./count-if.html">count_if</a>, <a class="reference internal" href="./find.html">find</a>, <a class="reference internal" href="./find-if.html">find_if</a>, <a class="reference internal" href="./contains.html">contains</a>, <a class="reference internal" href="./lower-bound.html">lower_bound</a></p>
|
||||
<!-- Algorithms/Querying Algorithms//count_if |50 -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./contains.html" class="navigation-link">Prev</a> <a href="./count-if.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./contains.html" class="navigation-link">Back</a> <a href="./count-if.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./querying-algorithms.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
@@ -1,30 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: Miscellaneous</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
<body class="docframe refmanual">
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./integral-c.html" class="navigation-link">Prev</a> <a href="./pair.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./numeric.html" class="navigation-link">Back</a> Along</span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./data-types.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./data-types.html" class="navigation-link">Data Types</a> / <a href="./data-miscellaneous.html" class="navigation-link">Miscellaneous</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="data-miscellaneous">
|
||||
<h1><a class="toc-backref" href="./data-types.html#id505" name="data-miscellaneous">Miscellaneous</a></h1>
|
||||
<a class="target" id="id279" name="id279"></a><!-- Data Types/Miscellaneous//pair |10 -->
|
||||
<ul class="toc simple" id="outline">
|
||||
<li><a class="reference" href="./pair.html" id="id506" name="id506">pair</a></li>
|
||||
<li><a class="reference" href="./empty-base.html" id="id507" name="id507">empty_base</a></li>
|
||||
<li><a class="reference" href="./void.html" id="id508" name="id508">void_</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./integral-c.html" class="navigation-link">Prev</a> <a href="./pair.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./numeric.html" class="navigation-link">Back</a> Along</span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./data-types.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
</html>
|
||||
@@ -1,28 +1,27 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: Concepts</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
<body class="docframe refmanual">
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./data-types.html" class="navigation-link">Prev</a> <a href="./integral-constant.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group">Back <a href="./numeric.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./data-types.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./data-types.html" class="navigation-link">Data Types</a> / <a href="./data-concepts.html" class="navigation-link">Concepts</a></td>
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./data-types.html" class="navigation-link">Data Types</a> / <a href="./data-types-concepts.html" class="navigation-link">Concepts</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="data-concepts">
|
||||
<h1><a class="toc-backref" href="./data-types.html#id497" name="data-concepts">Concepts</a></h1>
|
||||
<a class="target" id="label-data-types-concepts" name="label-data-types-concepts"></a><!-- Data Types/Concepts//Integral Constant -->
|
||||
<div class="section" id="id1216">
|
||||
<h1><a class="toc-backref" href="./data-types.html#id1573"><a class="subsection-title" href="#concepts" name="concepts">Concepts</a></a></h1>
|
||||
<!-- Data Types/Concepts//Integral Constant -->
|
||||
<ul class="toc simple" id="outline">
|
||||
<li><a class="reference" href="./integral-constant.html" id="id498" name="id498">Integral Constant</a></li>
|
||||
<li><a class="reference internal" href="./integral-constant.html" id="id1574">Integral Constant</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./data-types.html" class="navigation-link">Prev</a> <a href="./integral-constant.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group">Back <a href="./numeric.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./data-types.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
@@ -0,0 +1,29 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: Miscellaneous</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
<body class="docframe refmanual">
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./char.html" class="navigation-link">Prev</a> <a href="./pair.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./numeric.html" class="navigation-link">Back</a> Along</span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./data-types.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./data-types.html" class="navigation-link">Data Types</a> / <a href="./data-types-miscellaneous.html" class="navigation-link">Miscellaneous</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="id1270">
|
||||
<h1><a class="toc-backref" href="./data-types.html#id1582"><a class="subsection-title" href="#miscellaneous" name="miscellaneous">Miscellaneous</a></a></h1>
|
||||
<!-- Data Types/Miscellaneous//pair |10 -->
|
||||
<ul class="toc simple" id="outline">
|
||||
<li><a class="reference internal" href="./pair.html" id="id1583">pair</a></li>
|
||||
<li><a class="reference internal" href="./empty-base.html" id="id1584">empty_base</a></li>
|
||||
<li><a class="reference internal" href="./void.html" id="id1585">void_</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./char.html" class="navigation-link">Prev</a> <a href="./pair.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./numeric.html" class="navigation-link">Back</a> Along</span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./data-types.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
@@ -1,30 +1,28 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: Data Types</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
<body class="docframe refmanual">
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./sizeof.html" class="navigation-link">Prev</a> <a href="./data-concepts.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./metafunctions.html" class="navigation-link">Back</a> <a href="./macros.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="../refmanual.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./sizeof.html" class="navigation-link">Prev</a> <a href="./data-types-concepts.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./metafunctions.html" class="navigation-link">Back</a> <a href="./macros.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="../refmanual.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./data-types.html" class="navigation-link">Data Types</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="data-types">
|
||||
<h1><a class="toc-backref" href="../refmanual.html#id496" name="data-types">Data Types</a></h1>
|
||||
<a class="target" id="label-data-types" name="label-data-types"></a><a class="target" id="data" name="data"></a><!-- modtime: November 08, 2004 09:39:06 +0000 -->
|
||||
<ul class="toc simple" id="outline">
|
||||
<li><a class="reference" href="./data-concepts.html" id="id497" name="id497">Concepts</a></li>
|
||||
<li><a class="reference" href="./numeric.html" id="id499" name="id499">Numeric</a></li>
|
||||
<li><a class="reference" href="./data-miscellaneous.html" id="id505" name="id505">Miscellaneous</a></li>
|
||||
<h1><a class="toc-backref" href="../refmanual.html#id1572">Data Types</a></h1>
|
||||
<span class="target" id="data"><span id="label-data-types"></span></span><ul class="toc simple" id="outline">
|
||||
<li><a class="reference internal" href="./data-types-concepts.html" id="id1573">Concepts</a></li>
|
||||
<li><a class="reference internal" href="./numeric.html" id="id1575">Numeric</a></li>
|
||||
<li><a class="reference internal" href="./data-types-miscellaneous.html" id="id1582">Miscellaneous</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./sizeof.html" class="navigation-link">Prev</a> <a href="./data-concepts.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./metafunctions.html" class="navigation-link">Back</a> <a href="./macros.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="../refmanual.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./sizeof.html" class="navigation-link">Prev</a> <a href="./data-types-concepts.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./metafunctions.html" class="navigation-link">Back</a> <a href="./macros.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="../refmanual.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+22
-24
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: deque</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,35 +12,35 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./sequences.html" class="navigation-link">Sequences</a> / <a href="./classes.html" class="navigation-link">Classes</a> / <a href="./deque.html" class="navigation-link">deque</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="deque">
|
||||
<h1><a class="toc-backref" href="./classes.html#id337" name="deque">deque</a></h1>
|
||||
<div class="section" id="deque-description">
|
||||
<h1><a class="toc-backref" href="./classes.html#id1408">deque</a></h1>
|
||||
<div class="section" id="id64">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p><tt class="literal"><span class="pre"><a href="./deque.html" class="identifier">deque</a></span></tt> is a <a class="reference" href="./variadic-sequence.html">variadic</a>, <a class="reference" href="./random-access-sequence.html">random access</a>, <a class="reference" href="./extensible-sequence.html">extensible</a> sequence of types that
|
||||
supports constant-time insertion and removal of elements at both ends, and
|
||||
linear-time insertion and removal of elements in the middle. In this implementation
|
||||
of the library, <tt class="literal"><span class="pre"><a href="./deque.html" class="identifier">deque</a></span></tt> is a synonym for <a class="refentry reference" href="./vector.html"><tt class="refentry literal"><span class="pre">vector</span></tt></a>.</p>
|
||||
<p><tt class="literal"><span class="pre"><a href="./deque.html" class="identifier">deque</a></span></tt> is a <a class="reference internal" href="./variadic-sequence.html">variadic</a>, <a class="reference internal" href="./random-access-sequence.html">random access</a>, <a class="reference internal" href="./extensible-sequence.html">extensible</a> sequence of types that
|
||||
supports constant-time insertion and removal of elements at both ends, and
|
||||
linear-time insertion and removal of elements in the middle. In this implementation
|
||||
of the library, <tt class="literal"><span class="pre"><a href="./deque.html" class="identifier">deque</a></span></tt> is a synonym for <a class="reference internal" href="./vector.html">vector</a>.</p>
|
||||
</div>
|
||||
<div class="section" id="deque-header">
|
||||
<div class="section" id="id67">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/deque.hpp" class="header">boost/mpl/deque.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="deque-model-of">
|
||||
<div class="section" id="id68">
|
||||
<h3><a class="subsection-title" href="#model-of" name="model-of">Model of</a></h3>
|
||||
<ul class="simple">
|
||||
<li><a class="reference" href="./variadic-sequence.html">Variadic Sequence</a></li>
|
||||
<li><a class="reference" href="./random-access-sequence.html">Random Access Sequence</a></li>
|
||||
<li><a class="reference" href="./extensible-sequence.html">Extensible Sequence</a></li>
|
||||
<li><a class="reference" href="./back-extensible-sequence.html">Back Extensible Sequence</a></li>
|
||||
<li><a class="reference" href="./front-extensible-sequence.html">Front Extensible Sequence</a></li>
|
||||
<li><a class="reference internal" href="./variadic-sequence.html">Variadic Sequence</a></li>
|
||||
<li><a class="reference internal" href="./random-access-sequence.html">Random Access Sequence</a></li>
|
||||
<li><a class="reference internal" href="./extensible-sequence.html">Extensible Sequence</a></li>
|
||||
<li><a class="reference internal" href="./back-extensible-sequence.html">Back Extensible Sequence</a></li>
|
||||
<li><a class="reference internal" href="./front-extensible-sequence.html">Front Extensible Sequence</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="section" id="deque-expression-semantics">
|
||||
<div class="section" id="id69">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>See <a class="refentry reference" href="./vector.html"><tt class="refentry literal"><span class="pre">vector</span></tt></a> specification.</p>
|
||||
<p>See <a class="reference internal" href="./vector.html">vector</a> specification.</p>
|
||||
</div>
|
||||
<div class="section" id="deque-example">
|
||||
<div class="section" id="id70">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./deque.html" class="identifier">deque</a><float,double,long double> floats;
|
||||
@@ -52,15 +49,16 @@ typedef <a href="./push-back.html" class="identifier">push_back</a><floats,in
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( is_same< <a href="./at-c.html" class="identifier">at_c</a><types,3>::type, int > ));
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="deque-see-also">
|
||||
<div class="section" id="id71">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./sequences.html">Sequences</a>, <a class="refentry reference" href="./vector.html"><tt class="refentry literal"><span class="pre">vector</span></tt></a>, <a class="refentry reference" href="./list.html"><tt class="refentry literal"><span class="pre">list</span></tt></a>, <a class="refentry reference" href="./set.html"><tt class="refentry literal"><span class="pre">set</span></tt></a></p>
|
||||
<!-- modtime: November 15, 2004 01:17:18 +0000 -->
|
||||
<p><a class="reference internal" href="./sequences.html">Sequences</a>, <a class="reference internal" href="./vector.html">vector</a>, <a class="reference internal" href="./list.html">list</a>, <a class="reference internal" href="./set.html">set</a></p>
|
||||
<!-- Sequences/Classes//set |40 -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./list.html" class="navigation-link">Prev</a> <a href="./set.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./list.html" class="navigation-link">Back</a> <a href="./set.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./classes.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+27
-27
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: deref</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,8 +12,8 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./iterators.html" class="navigation-link">Iterators</a> / <a href="./iterator-metafunctions.html" class="navigation-link">Iterator Metafunctions</a> / <a href="./deref.html" class="navigation-link">deref</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="deref">
|
||||
<h1><a class="toc-backref" href="./iterator-metafunctions.html#id386" name="deref">deref</a></h1>
|
||||
<div class="section" id="deref-synopsis">
|
||||
<h1><a class="toc-backref" href="./iterator-metafunctions.html#id1458">deref</a></h1>
|
||||
<div class="section" id="id437">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
@@ -28,54 +25,56 @@ struct <a href="./deref.html" class="identifier">deref</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="deref-description">
|
||||
<div class="section" id="id438">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Dereferences an iterator.</p>
|
||||
</div>
|
||||
<div class="section" id="deref-header">
|
||||
<div class="section" id="id439">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/deref.hpp" class="header">boost/mpl/deref.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="deref-parameters">
|
||||
<div class="section" id="id440">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="19%" />
|
||||
<col width="35%" />
|
||||
<col width="45%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">Iterator</span></tt></td>
|
||||
<td><a class="reference" href="./forward-iterator.html">Forward Iterator</a></td>
|
||||
<td><a class="reference internal" href="./forward-iterator.html">Forward Iterator</a></td>
|
||||
<td>The iterator to dereference.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="deref-expression-semantics">
|
||||
<div class="section" id="id441">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For any <a class="reference" href="./forward-iterator.html">Forward Iterator</a>s <tt class="literal"><span class="pre">iter</span></tt>:</p>
|
||||
<p>For any <a class="reference internal" href="./forward-iterator.html">Forward Iterator</a>s <tt class="literal"><span class="pre">iter</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./deref.html" class="identifier">deref</a><iter>::type t;
|
||||
typedef <a href="./deref.html" class="identifier">deref</a><iter>::type t;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body">A type.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first">A type.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body"><tt class="literal"><span class="pre">iter</span></tt> is dereferenceable.</td>
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body"><p class="first"><tt class="literal"><span class="pre">iter</span></tt> is dereferenceable.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first"><tt class="literal"><span class="pre">t</span></tt> is identical to the element referenced by <tt class="literal"><span class="pre">iter</span></tt>. If <tt class="literal"><span class="pre">iter</span></tt> is
|
||||
a user-defined iterator, the library-provided default implementation is
|
||||
a user-defined iterator, the library-provided default implementation is
|
||||
equivalent to</p>
|
||||
<pre class="last literal-block">
|
||||
typedef iter::type t;
|
||||
@@ -85,11 +84,11 @@ typedef iter::type t;
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="deref-complexity">
|
||||
<div class="section" id="id442">
|
||||
<h3><a class="subsection-title" href="#complexity" name="complexity">Complexity</a></h3>
|
||||
<p>Amortized constant time.</p>
|
||||
</div>
|
||||
<div class="section" id="deref-example">
|
||||
<div class="section" id="id443">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./vector.html" class="identifier">vector</a><char,short,int,long> types;
|
||||
@@ -98,15 +97,16 @@ typedef <a href="./begin.html" class="identifier">begin</a><types>::type i
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( is_same< <a href="./deref.html" class="identifier">deref</a><iter>::type, char > ));
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="deref-see-also">
|
||||
<div class="section" id="id444">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./iterators.html">Iterators</a>, <a class="refentry reference" href="./begin.html"><tt class="refentry literal"><span class="pre">begin</span></tt></a> / <a class="refentry reference" href="./end.html"><tt class="refentry literal"><span class="pre">end</span></tt></a>, <a class="refentry reference" href="./next.html"><tt class="refentry literal"><span class="pre">next</span></tt></a></p>
|
||||
<!-- modtime: November 11, 2004 11:17:11 +0000 -->
|
||||
<p><a class="reference internal" href="./iterators.html">Iterators</a>, <a class="reference internal" href="./begin.html">begin</a> / <a class="reference internal" href="./end.html">end</a>, <a class="reference internal" href="./next.html">next</a></p>
|
||||
<!-- Iterators/Iterator Metafunctions//iterator_category |60 -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./prior.html" class="navigation-link">Prev</a> <a href="./iterator-category.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./prior.html" class="navigation-link">Back</a> <a href="./iterator-category.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./iterator-metafunctions.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+35
-34
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: distance</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,8 +12,8 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./iterators.html" class="navigation-link">Iterators</a> / <a href="./iterator-metafunctions.html" class="navigation-link">Iterator Metafunctions</a> / <a href="./distance.html" class="navigation-link">distance</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="distance">
|
||||
<h1><a class="toc-backref" href="./iterator-metafunctions.html#id383" name="distance">distance</a></h1>
|
||||
<div class="section" id="distance-synopsis">
|
||||
<h1><a class="toc-backref" href="./iterator-metafunctions.html#id1455">distance</a></h1>
|
||||
<div class="section" id="id412">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
@@ -29,81 +26,84 @@ struct <a href="./distance.html" class="identifier">distance</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="distance-description">
|
||||
<div class="section" id="id413">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Returns the distance between <tt class="literal"><span class="pre">First</span></tt> and <tt class="literal"><span class="pre">Last</span></tt> iterators, that is, an
|
||||
<a class="reference" href="./integral-constant.html">Integral Constant</a> <tt class="literal"><span class="pre">n</span></tt> such that <tt class="literal"><span class="pre"><a href="./advance.html" class="identifier">advance</a><First,n>::type</span></tt> is
|
||||
<p>Returns the distance between <tt class="literal"><span class="pre">First</span></tt> and <tt class="literal"><span class="pre">Last</span></tt> iterators, that is, an
|
||||
<a class="reference internal" href="./integral-constant.html">Integral Constant</a> <tt class="literal"><span class="pre">n</span></tt> such that <tt class="literal"><span class="pre"><a href="./advance.html" class="identifier">advance</a><First,n>::type</span></tt> is
|
||||
identical to <tt class="literal"><span class="pre">Last</span></tt>.</p>
|
||||
</div>
|
||||
<div class="section" id="distance-header">
|
||||
<div class="section" id="id414">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/distance.hpp" class="header">boost/mpl/distance.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="distance-parameters">
|
||||
<div class="section" id="id415">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="19%" />
|
||||
<col width="35%" />
|
||||
<col width="45%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">First</span></tt>,
|
||||
<tt class="literal"><span class="pre">Last</span></tt></td>
|
||||
<td><a class="reference" href="./forward-iterator.html">Forward Iterator</a></td>
|
||||
<td><a class="reference internal" href="./forward-iterator.html">Forward Iterator</a></td>
|
||||
<td>Iterators to compute a
|
||||
distance between.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="distance-model-of">
|
||||
<div class="section" id="id416">
|
||||
<h3><a class="subsection-title" href="#model-of" name="model-of">Model Of</a></h3>
|
||||
<p><a class="reference" href="./tag-dispatched.html">Tag Dispatched Metafunction</a></p>
|
||||
<p><a class="reference internal" href="./tag-dispatched-metafunction.html">Tag Dispatched Metafunction</a></p>
|
||||
</div>
|
||||
<div class="section" id="distance-expression-semantics">
|
||||
<div class="section" id="id417">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For any <a class="reference" href="./forward-iterator.html">Forward Iterator</a>s <tt class="literal"><span class="pre">first</span></tt> and <tt class="literal"><span class="pre">last</span></tt>:</p>
|
||||
<p>For any <a class="reference internal" href="./forward-iterator.html">Forward Iterator</a>s <tt class="literal"><span class="pre">first</span></tt> and <tt class="literal"><span class="pre">last</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./distance.html" class="identifier">distance</a><first,last>::type n;
|
||||
typedef <a href="./distance.html" class="identifier">distance</a><first,last>::type n;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference" href="./integral-constant.html">Integral Constant</a>.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><a class="reference internal" href="./integral-constant.html">Integral Constant</a>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body">[<tt class="literal"><span class="pre">first</span></tt>, <tt class="literal"><span class="pre">last</span></tt>) is a valid range.</td>
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body"><p class="first">[<tt class="literal"><span class="pre">first</span></tt>, <tt class="literal"><span class="pre">last</span></tt>) is a valid range.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Equivalent to</p>
|
||||
<pre class="last literal-block">
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./iter-fold.html" class="identifier">iter_fold</a><
|
||||
<a href="./iterator-range.html" class="identifier">iterator_range</a><first,last>
|
||||
, <a href="./long.html" class="identifier">long_</a><0>
|
||||
, <a href="./next.html" class="identifier">next</a><_1>
|
||||
, <a href="./next.html" class="identifier">next</a><<a href="./placeholders.html" class="identifier">_1</a>>
|
||||
>::type n;
|
||||
</pre>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Postcondition:</th><td class="field-body"><tt class="literal"><span class="pre">is_same<</span> <span class="pre"><a href="./advance.html" class="identifier">advance</a><first,n>::type,</span> <span class="pre">last</span> <span class="pre">>::value</span> <span class="pre">==</span> <span class="pre">true</span></tt>.</td>
|
||||
<tr class="field"><th class="field-name">Postcondition:</th><td class="field-body"><p class="first last"><tt class="literal"><span class="pre">is_same<</span> <span class="pre"><a href="./advance.html" class="identifier">advance</a><first,n>::type,</span> <span class="pre">last</span> <span class="pre">>::value</span> <span class="pre">==</span> <span class="pre">true</span></tt>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="distance-complexity">
|
||||
<div class="section" id="id418">
|
||||
<h3><a class="subsection-title" href="#complexity" name="complexity">Complexity</a></h3>
|
||||
<p>Amortized constant time if <tt class="literal"><span class="pre">first</span></tt> and <tt class="literal"><span class="pre">last</span></tt> are <a class="reference" href="./random-access-iterator.html">Random Access Iterator</a>s,
|
||||
<p>Amortized constant time if <tt class="literal"><span class="pre">first</span></tt> and <tt class="literal"><span class="pre">last</span></tt> are <a class="reference internal" href="./random-access-iterator.html">Random Access Iterator</a>s,
|
||||
otherwise linear time.</p>
|
||||
</div>
|
||||
<div class="section" id="distance-example">
|
||||
<div class="section" id="id419">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./range-c.html" class="identifier">range_c</a><int,0,10>::type range;
|
||||
@@ -113,15 +113,16 @@ typedef <a href="./end.html" class="identifier">end</a><range>::type last;
|
||||
<a href="./assert-relation.html" class="identifier">BOOST_MPL_ASSERT_RELATION</a>( (<a href="./distance.html" class="identifier">distance</a><first,last>::value), ==, 10);
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="distance-see-also">
|
||||
<div class="section" id="id420">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./iterators.html">Iterators</a>, <a class="reference" href="./tag-dispatched.html">Tag Dispatched Metafunction</a>, <a class="refentry reference" href="./advance.html"><tt class="refentry literal"><span class="pre">advance</span></tt></a>, <a class="refentry reference" href="./next.html"><tt class="refentry literal"><span class="pre">next</span></tt></a>, <a class="refentry reference" href="./prior.html"><tt class="refentry literal"><span class="pre">prior</span></tt></a></p>
|
||||
<!-- modtime: November 11, 2004 11:16:46 +0000 -->
|
||||
<p><a class="reference internal" href="./iterators.html">Iterators</a>, <a class="reference internal" href="./tag-dispatched-metafunction.html">Tag Dispatched Metafunction</a>, <a class="reference internal" href="./advance.html">advance</a>, <a class="reference internal" href="./next.html">next</a>, <a class="reference internal" href="./prior.html">prior</a></p>
|
||||
<!-- Iterators/Iterator Metafunctions//next |30 -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./advance.html" class="navigation-link">Prev</a> <a href="./next.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./advance.html" class="navigation-link">Back</a> <a href="./next.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./iterator-metafunctions.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+38
-36
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: divides</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,8 +12,8 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./metafunctions.html" class="navigation-link">Metafunctions</a> / <a href="./arithmetic-operations.html" class="navigation-link">Arithmetic Operations</a> / <a href="./divides.html" class="navigation-link">divides</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="divides">
|
||||
<h1><a class="toc-backref" href="./arithmetic-operations.html#id465" name="divides">divides</a></h1>
|
||||
<div class="section" id="divides-synopsis">
|
||||
<h1><a class="toc-backref" href="./arithmetic-operations.html#id1539">divides</a></h1>
|
||||
<div class="section" id="id987">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
@@ -32,60 +29,62 @@ struct <a href="./divides.html" class="identifier">divides</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="divides-description">
|
||||
<div class="section" id="id988">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Returns the quotient of its arguments.</p>
|
||||
</div>
|
||||
<div class="section" id="divides-header">
|
||||
<div class="section" id="id989">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/divides.hpp" class="header">boost/mpl/divides.hpp</a>>
|
||||
#include <<a href="../../../../boost/mpl/arithmetic.hpp" class="header">boost/mpl/arithmetic.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="divides-model-of">
|
||||
<div class="section" id="id990">
|
||||
<h3><a class="subsection-title" href="#model-of" name="model-of">Model of</a></h3>
|
||||
<p><a class="reference" href="./numeric-metafunction.html">Numeric Metafunction</a></p>
|
||||
<p><a class="reference internal" href="./numeric-metafunction.html">Numeric Metafunction</a></p>
|
||||
</div>
|
||||
<div class="section" id="divides-parameters">
|
||||
<div class="section" id="id991">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="17%" />
|
||||
<col width="30%" />
|
||||
<col width="53%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">T1</span></tt>, <tt class="literal"><span class="pre">T2</span></tt>,... <tt class="literal"><span class="pre">Tn</span></tt></td>
|
||||
<td><a class="reference" href="./integral-constant.html">Integral Constant</a></td>
|
||||
<td><a class="reference internal" href="./integral-constant.html">Integral Constant</a></td>
|
||||
<td>Operation's arguments.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p>[<em>Note:</em> The requirements listed in this specification
|
||||
are the ones imposed by the default implementation. See <a class="reference" href="./numeric-metafunction.html">Numeric Metafunction</a> concept
|
||||
for the details on how to provide an implementation for a user-defined numeric type
|
||||
that does not satisfy the <a class="reference" href="./integral-constant.html">Integral Constant</a> requirements. — <em>end note</em>]</p>
|
||||
are the ones imposed by the default implementation. See <a class="reference internal" href="./numeric-metafunction.html">Numeric Metafunction</a> concept
|
||||
for the details on how to provide an implementation for a user-defined numeric type
|
||||
that does not satisfy the <a class="reference internal" href="./integral-constant.html">Integral Constant</a> requirements. — <em>end note</em>]</p>
|
||||
</div>
|
||||
<div class="section" id="divides-expression-semantics">
|
||||
<div class="section" id="id992">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For any <a class="reference" href="./integral-constant.html">Integral Constant</a>s <em>c</em><sub>1</sub>,<em>c</em><sub>2</sub>,... <em>c</em><sub>n</sub>:</p>
|
||||
<p>For any <a class="reference internal" href="./integral-constant.html">Integral Constant</a>s <em>c</em><sub>1</sub>,<em>c</em><sub>2</sub>,... <em>c</em><sub>n</sub>:</p>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./divides.html" class="identifier">divides</a><c1,<em>...</em>c<em>n</em>>::type r;
|
||||
typedef <a href="./divides.html" class="identifier">divides</a><c1,<em>...</em>c<em>n</em>>::type r;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference" href="./integral-constant.html">Integral Constant</a>.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><a class="reference internal" href="./integral-constant.html">Integral Constant</a>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body"><tt class="literal"><span class="pre">c2::value</span> <span class="pre">!=</span> <span class="pre">0</span></tt>, <em>...</em> <tt class="literal"><span class="pre">cn::value</span> <span class="pre">!=</span> <span class="pre">0</span></tt>.</td>
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body"><p class="first"><tt class="literal"><span class="pre">c2::value</span> <span class="pre">!=</span> <span class="pre">0</span></tt>, <em>...</em> <tt class="literal"><span class="pre">cn::value</span> <span class="pre">!=</span> <span class="pre">0</span></tt>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Equivalent to</p>
|
||||
<pre class="last literal-block">
|
||||
@@ -93,8 +92,8 @@ typedef <a href="./integral-c.html" class="identifier">integral_c</a><
|
||||
typeof(c1::value / c2::value)
|
||||
, ( c1::value / c2::value )
|
||||
> c;
|
||||
|
||||
typedef <a href="./divides.html" class="identifier">divides</a><c,c3,<em>...</em>c<em>n</em>>::type r;
|
||||
|
||||
typedef <a href="./divides.html" class="identifier">divides</a><c,c3,<em>...</em>c<em>n</em>>::type r;
|
||||
</pre>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -104,13 +103,15 @@ typedef <a href="./divides.html" class="identifier">divides</a><c,c3,<em>...<
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./divides.html" class="identifier">divides</a><c1,<em>...</em>c<em>n</em>> r;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference" href="./integral-constant.html">Integral Constant</a>.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><a class="reference internal" href="./integral-constant.html">Integral Constant</a>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body"><tt class="literal"><span class="pre">c2::value</span> <span class="pre">!=</span> <span class="pre">0</span></tt>, <em>...</em> <tt class="literal"><span class="pre">cn::value</span> <span class="pre">!=</span> <span class="pre">0</span></tt>.</td>
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body"><p class="first"><tt class="literal"><span class="pre">c2::value</span> <span class="pre">!=</span> <span class="pre">0</span></tt>, <em>...</em> <tt class="literal"><span class="pre">cn::value</span> <span class="pre">!=</span> <span class="pre">0</span></tt>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Equivalent to</p>
|
||||
<pre class="last literal-block">
|
||||
@@ -121,11 +122,11 @@ struct r : <a href="./divides.html" class="identifier">divides</a><c1,<em>...
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="divides-complexity">
|
||||
<div class="section" id="id993">
|
||||
<h3><a class="subsection-title" href="#complexity" name="complexity">Complexity</a></h3>
|
||||
<p>Amortized constant time.</p>
|
||||
</div>
|
||||
<div class="section" id="divides-example">
|
||||
<div class="section" id="id994">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./divides.html" class="identifier">divides</a>< <a href="./int.html" class="identifier">int_</a><-10>, <a href="./int.html" class="identifier">int_</a><3>, <a href="./long.html" class="identifier">long_</a><1> >::type r;
|
||||
@@ -133,15 +134,16 @@ typedef <a href="./divides.html" class="identifier">divides</a>< <a href="./i
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( is_same< r::<a href="./value-type.html" class="identifier">value_type</a>, long > ));
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="divides-see-also">
|
||||
<div class="section" id="id995">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./arithmetic-operations.html">Arithmetic Operations</a>, <a class="reference" href="./numeric-metafunction.html">Numeric Metafunction</a>, <a class="refentry reference" href="./numeric-cast.html"><tt class="refentry literal"><span class="pre">numeric_cast</span></tt></a>, <a class="refentry reference" href="./times.html"><tt class="refentry literal"><span class="pre">times</span></tt></a>, <a class="refentry reference" href="./modulus.html"><tt class="refentry literal"><span class="pre">modulus</span></tt></a>, <a class="refentry reference" href="./plus.html"><tt class="refentry literal"><span class="pre">plus</span></tt></a></p>
|
||||
<!-- modtime: November 10, 2004 04:43:02 +0000 -->
|
||||
<p><a class="reference internal" href="./arithmetic-operations.html">Arithmetic Operations</a>, <a class="reference internal" href="./numeric-metafunction.html">Numeric Metafunction</a>, <a class="reference internal" href="./numeric-cast.html">numeric_cast</a>, <a class="reference internal" href="./times.html">times</a>, <a class="reference internal" href="./modulus.html">modulus</a>, <a class="reference internal" href="./plus.html">plus</a></p>
|
||||
<!-- Metafunctions/Arithmetic Operations//modulus |50 -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./times.html" class="navigation-link">Prev</a> <a href="./modulus.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./times.html" class="navigation-link">Back</a> <a href="./modulus.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./arithmetic-operations.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
@@ -1,47 +1,45 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: empty_base</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
<body class="docframe refmanual">
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./pair.html" class="navigation-link">Prev</a> <a href="./void.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./pair.html" class="navigation-link">Back</a> <a href="./void.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./data-miscellaneous.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./data-types.html" class="navigation-link">Data Types</a> / <a href="./data-miscellaneous.html" class="navigation-link">Miscellaneous</a> / <a href="./empty-base.html" class="navigation-link">empty_base</a></td>
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./pair.html" class="navigation-link">Prev</a> <a href="./void.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./pair.html" class="navigation-link">Back</a> <a href="./void.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./data-types-miscellaneous.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./data-types.html" class="navigation-link">Data Types</a> / <a href="./data-types-miscellaneous.html" class="navigation-link">Miscellaneous</a> / <a href="./empty-base.html" class="navigation-link">empty_base</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="empty-base">
|
||||
<h1><a class="toc-backref" href="./data-miscellaneous.html#id507" name="empty-base">empty_base</a></h1>
|
||||
<div class="section" id="data-empty-synopsis">
|
||||
<h1><a class="toc-backref" href="./data-types-miscellaneous.html#id1584">empty_base</a></h1>
|
||||
<div class="section" id="id1276">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
struct <a href="./empty-base.html" class="identifier">empty_base</a> {};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="data-empty-description">
|
||||
<div class="section" id="id1277">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>An empty base class. Inheritance from <a class="refentry reference" href="./empty-base.html"><tt class="refentry literal"><span class="pre">empty_base</span></tt></a> through the <a class="refentry reference" href="./inherit.html"><tt class="refentry literal"><span class="pre">inherit</span></tt></a>
|
||||
<p>An empty base class. Inheritance from <a class="reference internal" href="./empty-base.html">empty_base</a> through the <a class="reference internal" href="./inherit.html">inherit</a>
|
||||
metafunction is a no-op.</p>
|
||||
</div>
|
||||
<div class="section" id="data-empty-header">
|
||||
<div class="section" id="id1278">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/empty_base.hpp" class="header">boost/mpl/empty_base.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="data-empty-see-also">
|
||||
<div class="section" id="id1279">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./data-types.html">Data Types</a>, <a class="refentry reference" href="./inherit.html"><tt class="refentry literal"><span class="pre">inherit</span></tt></a>, <a class="refentry reference" href="./inherit-linearly.html"><tt class="refentry literal"><span class="pre">inherit_linearly</span></tt></a>, <a class="refentry reference" href="./void.html"><tt class="refentry literal"><span class="pre">void_</span></tt></a></p>
|
||||
<!-- modtime: November 10, 2004 04:42:54 +0000 -->
|
||||
<p><a class="reference internal" href="./data-types.html">Data Types</a>, <a class="reference internal" href="./inherit.html">inherit</a>, <a class="reference internal" href="./inherit-linearly.html">inherit_linearly</a>, <a class="reference internal" href="./void.html">void_</a></p>
|
||||
<!-- Data Types/Miscellaneous//void_ |100 -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./pair.html" class="navigation-link">Prev</a> <a href="./void.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./pair.html" class="navigation-link">Back</a> <a href="./void.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./data-miscellaneous.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./pair.html" class="navigation-link">Prev</a> <a href="./void.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./pair.html" class="navigation-link">Back</a> <a href="./void.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./data-types-miscellaneous.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: empty_sequence</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,8 +12,8 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./sequences.html" class="navigation-link">Sequences</a> / <a href="./views.html" class="navigation-link">Views</a> / <a href="./empty-sequence.html" class="navigation-link">empty_sequence</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="empty-sequence">
|
||||
<h1><a class="toc-backref" href="./views.html#id345" name="empty-sequence">empty_sequence</a></h1>
|
||||
<div class="section" id="empty-synopsis">
|
||||
<h1><a class="toc-backref" href="./views.html#id1417">empty_sequence</a></h1>
|
||||
<div class="section" id="id120">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
struct <a href="./empty-sequence.html" class="identifier">empty_sequence</a>
|
||||
@@ -26,42 +23,42 @@ struct <a href="./empty-sequence.html" class="identifier">empty_sequence</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="empty-description">
|
||||
<div class="section" id="id121">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Represents a sequence containing no elements.</p>
|
||||
</div>
|
||||
<div class="section" id="empty-header">
|
||||
<div class="section" id="id122">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/empty_sequence.hpp" class="header">boost/mpl/empty_sequence.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="empty-expression-semantics">
|
||||
<div class="section" id="id123">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>The semantics of an expression are defined only
|
||||
where they differ from, or are not defined in <a class="reference" href="./random-access-sequence.html">Random Access Sequence</a>.</p>
|
||||
where they differ from, or are not defined in <a class="reference internal" href="./random-access-sequence.html">Random Access Sequence</a>.</p>
|
||||
<p>In the following table, <tt class="literal"><span class="pre">s</span></tt> is an instance of <tt class="literal"><span class="pre"><a href="./empty-sequence.html" class="identifier">empty_sequence</a></span></tt>.</p>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="34%" />
|
||||
<col width="66%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Expression</th>
|
||||
<th>Semantics</th>
|
||||
<tr><th class="head">Expression</th>
|
||||
<th class="head">Semantics</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./empty-sequence.html" class="identifier">empty_sequence</a></span></tt></td>
|
||||
<td>An empty <a class="reference" href="./random-access-sequence.html">Random Access Sequence</a>.</td>
|
||||
<td>An empty <a class="reference internal" href="./random-access-sequence.html">Random Access Sequence</a>.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./size.html" class="identifier">size</a><s>::type</span></tt></td>
|
||||
<td><tt class="literal"><span class="pre"><a href="./size.html" class="identifier">size</a><s>::value</span> <span class="pre">==</span> <span class="pre">0</span></tt>; see <a class="reference" href="./random-access-sequence.html">Random Access Sequence</a>.</td>
|
||||
<td><tt class="literal"><span class="pre"><a href="./size.html" class="identifier">size</a><s>::value</span> <span class="pre">==</span> <span class="pre">0</span></tt>; see <a class="reference internal" href="./random-access-sequence.html">Random Access Sequence</a>.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="empty-example">
|
||||
<div class="section" id="id124">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./begin.html" class="identifier">begin</a><<a href="./empty-sequence.html" class="identifier">empty_sequence</a>>::type first;
|
||||
@@ -78,15 +75,16 @@ typedef <a href="./transform-view.html" class="identifier">transform_view</a><
|
||||
<a href="./assert-relation.html" class="identifier">BOOST_MPL_ASSERT_RELATION</a>( <a href="./size.html" class="identifier">size</a><<a href="./empty-sequence.html" class="identifier">empty_sequence</a>>::value, ==, 0 );
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="empty-see-also">
|
||||
<div class="section" id="id125">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./sequences.html">Sequences</a>, <a class="reference" href="./views.html">Views</a>, <a class="refentry reference" href="./vector.html"><tt class="refentry literal"><span class="pre">vector</span></tt></a>, <a class="refentry reference" href="./list.html"><tt class="refentry literal"><span class="pre">list</span></tt></a>, <a class="refentry reference" href="./single-view.html"><tt class="refentry literal"><span class="pre">single_view</span></tt></a></p>
|
||||
<!-- modtime: November 13, 2004 20:20:53 +0000 -->
|
||||
<p><a class="reference internal" href="./sequences.html">Sequences</a>, <a class="reference internal" href="./views.html">Views</a>, <a class="reference internal" href="./vector.html">vector</a>, <a class="reference internal" href="./list.html">list</a>, <a class="reference internal" href="./single-view.html">single_view</a></p>
|
||||
<!-- Sequences/Views//filter_view -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./views.html" class="navigation-link">Prev</a> <a href="./filter-view.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group">Back <a href="./filter-view.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./views.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+26
-28
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: empty</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,8 +12,8 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./sequences.html" class="navigation-link">Sequences</a> / <a href="./intrinsic-metafunctions.html" class="navigation-link">Intrinsic Metafunctions</a> / <a href="./empty.html" class="navigation-link">empty</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="empty">
|
||||
<h1><a class="toc-backref" href="./intrinsic-metafunctions.html#id358" name="empty">empty</a></h1>
|
||||
<div class="section" id="intrinsic-empty-synopsis">
|
||||
<h1><a class="toc-backref" href="./intrinsic-metafunctions.html#id1430">empty</a></h1>
|
||||
<div class="section" id="id220">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
@@ -28,54 +25,54 @@ struct <a href="./empty.html" class="identifier">empty</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="intrinsic-empty-description">
|
||||
<div class="section" id="id221">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Returns an <a class="reference" href="./integral-constant.html">Integral Constant</a> <tt class="literal"><span class="pre">c</span></tt> such that <tt class="literal"><span class="pre">c::value</span> <span class="pre">==</span> <span class="pre">true</span></tt> if
|
||||
<p>Returns an <a class="reference internal" href="./integral-constant.html">Integral Constant</a> <tt class="literal"><span class="pre">c</span></tt> such that <tt class="literal"><span class="pre">c::value</span> <span class="pre">==</span> <span class="pre">true</span></tt> if
|
||||
and only if the sequence is empty.</p>
|
||||
</div>
|
||||
<div class="section" id="intrinsic-empty-header">
|
||||
<div class="section" id="id222">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/empty.hpp" class="header">boost/mpl/empty.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="empty-model-of">
|
||||
<div class="section" id="id223">
|
||||
<h3><a class="subsection-title" href="#model-of" name="model-of">Model of</a></h3>
|
||||
<p><a class="reference" href="./tag-dispatched.html">Tag Dispatched Metafunction</a></p>
|
||||
<p><a class="reference internal" href="./tag-dispatched-metafunction.html">Tag Dispatched Metafunction</a></p>
|
||||
</div>
|
||||
<div class="section" id="empty-parameters">
|
||||
<div class="section" id="id224">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="21%" />
|
||||
<col width="32%" />
|
||||
<col width="48%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">Sequence</span></tt></td>
|
||||
<td><a class="reference" href="./forward-sequence.html">Forward Sequence</a></td>
|
||||
<td><a class="reference internal" href="./forward-sequence.html">Forward Sequence</a></td>
|
||||
<td>A sequence to test.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="intrinsic-empty-expression-semantics">
|
||||
<div class="section" id="id225">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For any <a class="reference" href="./forward-sequence.html">Forward Sequence</a> <tt class="literal"><span class="pre">s</span></tt>:</p>
|
||||
<p>For any <a class="reference internal" href="./forward-sequence.html">Forward Sequence</a> <tt class="literal"><span class="pre">s</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./empty.html" class="identifier">empty</a><s>::type c;
|
||||
typedef <a href="./empty.html" class="identifier">empty</a><s>::type c;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body">Boolean <a class="reference" href="./integral-constant.html">Integral Constant</a>.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body">Boolean <a class="reference internal" href="./integral-constant.html">Integral Constant</a>.</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body">Equivalent to <tt class="literal"><span class="pre">typedef</span> <span class="pre">is_same<</span> <span class="pre"><a href="./begin.html" class="identifier">begin</a><s>::type,<a href="./end.html" class="identifier">end</a><s>::type</span> <span class="pre">>::type</span> <span class="pre">c;</span></tt>.</td>
|
||||
</tr>
|
||||
@@ -84,11 +81,11 @@ typedef <a href="./empty.html" class="identifier">empty</a><s>::type c;
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="empty-complexity">
|
||||
<div class="section" id="id226">
|
||||
<h3><a class="subsection-title" href="#complexity" name="complexity">Complexity</a></h3>
|
||||
<p>Amortized constant time.</p>
|
||||
</div>
|
||||
<div class="section" id="intrinsic-empty-example">
|
||||
<div class="section" id="id227">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./range-c.html" class="identifier">range_c</a><int,0,0> empty_range;
|
||||
@@ -98,15 +95,16 @@ typedef <a href="./vector.html" class="identifier">vector</a><long,float,doub
|
||||
<a href="./assert-not.html" class="identifier">BOOST_MPL_ASSERT_NOT</a>( <a href="./empty.html" class="identifier">empty</a><types> );
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="intrinsic-empty-see-also">
|
||||
<div class="section" id="id228">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./forward-sequence.html">Forward Sequence</a>, <a class="reference" href="./integral-constant.html">Integral Constant</a>, <a class="refentry reference" href="./size.html"><tt class="refentry literal"><span class="pre">size</span></tt></a>, <a class="refentry reference" href="./begin.html"><tt class="refentry literal"><span class="pre">begin</span></tt></a> / <a class="refentry reference" href="./end.html"><tt class="refentry literal"><span class="pre">end</span></tt></a></p>
|
||||
<!-- modtime: November 15, 2004 02:43:18 +0000 -->
|
||||
<p><a class="reference internal" href="./forward-sequence.html">Forward Sequence</a>, <a class="reference internal" href="./integral-constant.html">Integral Constant</a>, <a class="reference internal" href="./size.html">size</a>, <a class="reference internal" href="./begin.html">begin</a> / <a class="reference internal" href="./end.html">end</a></p>
|
||||
<!-- Sequences/Intrinsic Metafunctions//end -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./clear.html" class="navigation-link">Prev</a> <a href="./end.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./clear.html" class="navigation-link">Back</a> <a href="./end.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./intrinsic-metafunctions.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+27
-29
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: end</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,8 +12,8 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./sequences.html" class="navigation-link">Sequences</a> / <a href="./intrinsic-metafunctions.html" class="navigation-link">Intrinsic Metafunctions</a> / <a href="./end.html" class="navigation-link">end</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="end">
|
||||
<h1><a class="toc-backref" href="./intrinsic-metafunctions.html#id359" name="end">end</a></h1>
|
||||
<div class="section" id="end-synopsis">
|
||||
<h1><a class="toc-backref" href="./intrinsic-metafunctions.html#id1431">end</a></h1>
|
||||
<div class="section" id="id229">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
@@ -28,33 +25,33 @@ struct <a href="./end.html" class="identifier">end</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="end-description">
|
||||
<div class="section" id="id230">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Returns the sequence's past-the-end iterator. If the argument is not a
|
||||
<a class="reference" href="./forward-sequence.html">Forward Sequence</a>, returns <a class="refentry reference" href="./void.html"><tt class="refentry literal"><span class="pre">void_</span></tt></a>.</p>
|
||||
<p>Returns the sequence's past-the-end iterator. If the argument is not a
|
||||
<a class="reference internal" href="./forward-sequence.html">Forward Sequence</a>, returns <a class="reference internal" href="./void.html">void_</a>.</p>
|
||||
</div>
|
||||
<div class="section" id="end-header">
|
||||
<div class="section" id="id231">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/begin_end.hpp" class="header">boost/mpl/begin_end.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="end-model-of">
|
||||
<div class="section" id="id232">
|
||||
<h3><a class="subsection-title" href="#model-of" name="model-of">Model of</a></h3>
|
||||
<p><a class="reference" href="./tag-dispatched.html">Tag Dispatched Metafunction</a></p>
|
||||
<p><a class="reference internal" href="./tag-dispatched-metafunction.html">Tag Dispatched Metafunction</a></p>
|
||||
</div>
|
||||
<div class="section" id="end-parameters">
|
||||
<div class="section" id="id233">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="19%" />
|
||||
<col width="23%" />
|
||||
<col width="58%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
@@ -66,31 +63,31 @@ returned.</td>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="end-expression-semantics">
|
||||
<div class="section" id="id234">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For any arbitrary type <tt class="literal"><span class="pre">x</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./end.html" class="identifier">end</a><x>::type last;
|
||||
typedef <a href="./end.html" class="identifier">end</a><x>::type last;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference" href="./forward-iterator.html">Forward Iterator</a> or <a class="refentry reference" href="./void.html"><tt class="refentry literal"><span class="pre">void_</span></tt></a>.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference internal" href="./forward-iterator.html">Forward Iterator</a> or <a class="reference internal" href="./void.html">void_</a>.</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body">If <tt class="literal"><span class="pre">x</span></tt> is <a class="reference" href="./forward-sequence.html">Forward Sequence</a>, <tt class="literal"><span class="pre">last</span></tt> is an iterator pointing one past the
|
||||
last element in <tt class="literal"><span class="pre">s</span></tt>; otherwise <tt class="literal"><span class="pre">last</span></tt> is <a class="refentry reference" href="./void.html"><tt class="refentry literal"><span class="pre">void_</span></tt></a>.</td>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body">If <tt class="literal"><span class="pre">x</span></tt> is <a class="reference internal" href="./forward-sequence.html">Forward Sequence</a>, <tt class="literal"><span class="pre">last</span></tt> is an iterator pointing one past the
|
||||
last element in <tt class="literal"><span class="pre">s</span></tt>; otherwise <tt class="literal"><span class="pre">last</span></tt> is <a class="reference internal" href="./void.html">void_</a>.</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Postcondition:</th><td class="field-body">If <tt class="literal"><span class="pre">last</span></tt> is an iterator, it is past-the-end.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="end-complexity">
|
||||
<div class="section" id="id235">
|
||||
<h3><a class="subsection-title" href="#complexity" name="complexity">Complexity</a></h3>
|
||||
<p>Amortized constant time.</p>
|
||||
</div>
|
||||
<div class="section" id="end-example">
|
||||
<div class="section" id="id236">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./vector.html" class="identifier">vector</a><long> v;
|
||||
@@ -100,15 +97,16 @@ typedef <a href="./end.html" class="identifier">end</a><v>::type last;
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( is_same< <a href="./next.html" class="identifier">next</a><first>::type, last > ));
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="end-see-also">
|
||||
<div class="section" id="id237">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./iterators.html">Iterators</a>, <a class="reference" href="./forward-sequence.html">Forward Sequence</a>, <a class="refentry reference" href="./begin.html"><tt class="refentry literal"><span class="pre">begin</span></tt></a>, <a class="refentry reference" href="./end.html"><tt class="refentry literal"><span class="pre">end</span></tt></a>, <a class="refentry reference" href="./next.html"><tt class="refentry literal"><span class="pre">next</span></tt></a></p>
|
||||
<!-- modtime: November 13, 2004 01:26:54 +0000 -->
|
||||
<p><a class="reference internal" href="./iterators.html">Iterators</a>, <a class="reference internal" href="./forward-sequence.html">Forward Sequence</a>, <a class="reference internal" href="./begin.html">begin</a>, <a class="reference internal" href="./end.html">end</a>, <a class="reference internal" href="./next.html">next</a></p>
|
||||
<!-- Sequences/Intrinsic Metafunctions//erase -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./empty.html" class="navigation-link">Prev</a> <a href="./erase.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./empty.html" class="navigation-link">Back</a> <a href="./erase.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./intrinsic-metafunctions.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+34
-34
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: equal_to</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,8 +12,8 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./metafunctions.html" class="navigation-link">Metafunctions</a> / <a href="./comparisons.html" class="navigation-link">Comparisons</a> / <a href="./equal-to.html" class="navigation-link">equal_to</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="equal-to">
|
||||
<h1><a class="toc-backref" href="./comparisons.html#id473" name="equal-to">equal_to</a></h1>
|
||||
<div class="section" id="comparisons-equal-synopsis">
|
||||
<h1><a class="toc-backref" href="./comparisons.html#id1547">equal_to</a></h1>
|
||||
<div class="section" id="id1050">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
@@ -29,58 +26,59 @@ struct <a href="./equal-to.html" class="identifier">equal_to</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="comparisons-equal-description">
|
||||
<div class="section" id="id1051">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Returns a true-valued <a class="reference" href="./integral-constant.html">Integral Constant</a> if <tt class="literal"><span class="pre">T1</span></tt> and <tt class="literal"><span class="pre">T2</span></tt> are equal.</p>
|
||||
<p>Returns a true-valued <a class="reference internal" href="./integral-constant.html">Integral Constant</a> if <tt class="literal"><span class="pre">T1</span></tt> and <tt class="literal"><span class="pre">T2</span></tt> are equal.</p>
|
||||
</div>
|
||||
<div class="section" id="comparisons-equal-header">
|
||||
<div class="section" id="id1052">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/equal_to.hpp" class="header">boost/mpl/equal_to.hpp</a>>
|
||||
#include <<a href="../../../../boost/mpl/comparison.hpp" class="header">boost/mpl/comparison.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="equal-model-of">
|
||||
<div class="section" id="id1053">
|
||||
<h3><a class="subsection-title" href="#model-of" name="model-of">Model of</a></h3>
|
||||
<p><a class="reference" href="./numeric-metafunction.html">Numeric Metafunction</a></p>
|
||||
<p><a class="reference internal" href="./numeric-metafunction.html">Numeric Metafunction</a></p>
|
||||
</div>
|
||||
<div class="section" id="comparisons-equal-parameters">
|
||||
<div class="section" id="id1054">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="17%" />
|
||||
<col width="30%" />
|
||||
<col width="53%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">T1</span></tt>, <tt class="literal"><span class="pre">T2</span></tt></td>
|
||||
<td><a class="reference" href="./integral-constant.html">Integral Constant</a></td>
|
||||
<td><a class="reference internal" href="./integral-constant.html">Integral Constant</a></td>
|
||||
<td>Operation's arguments.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p>[<em>Note:</em> The requirements listed in this specification
|
||||
are the ones imposed by the default implementation. See <a class="reference" href="./numeric-metafunction.html">Numeric Metafunction</a> concept
|
||||
for the details on how to provide an implementation for a user-defined numeric type
|
||||
that does not satisfy the <a class="reference" href="./integral-constant.html">Integral Constant</a> requirements. — <em>end note</em>]</p>
|
||||
are the ones imposed by the default implementation. See <a class="reference internal" href="./numeric-metafunction.html">Numeric Metafunction</a> concept
|
||||
for the details on how to provide an implementation for a user-defined numeric type
|
||||
that does not satisfy the <a class="reference internal" href="./integral-constant.html">Integral Constant</a> requirements. — <em>end note</em>]</p>
|
||||
</div>
|
||||
<div class="section" id="comparisons-equal-expression-semantics">
|
||||
<div class="section" id="id1055">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For any <a class="reference" href="./integral-constant.html">Integral Constant</a>s <tt class="literal"><span class="pre">c1</span></tt> and <tt class="literal"><span class="pre">c2</span></tt>:</p>
|
||||
<p>For any <a class="reference internal" href="./integral-constant.html">Integral Constant</a>s <tt class="literal"><span class="pre">c1</span></tt> and <tt class="literal"><span class="pre">c2</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./equal-to.html" class="identifier">equal_to</a><c1,c2>::type r;
|
||||
typedef <a href="./equal-to.html" class="identifier">equal_to</a><c1,c2>::type r;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference" href="./integral-constant.html">Integral Constant</a>.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><a class="reference internal" href="./integral-constant.html">Integral Constant</a>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Equivalent to</p>
|
||||
<pre class="last literal-block">
|
||||
@@ -92,13 +90,14 @@ typedef <a href="./bool.html" class="identifier">bool_</a>< (c1::value == c2:
|
||||
</table>
|
||||
<!-- .......................................................................... -->
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./equal-to.html" class="identifier">equal_to</a><c1,c2> r;
|
||||
typedef <a href="./equal-to.html" class="identifier">equal_to</a><c1,c2> r;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference" href="./integral-constant.html">Integral Constant</a>.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><a class="reference internal" href="./integral-constant.html">Integral Constant</a>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Equivalent to</p>
|
||||
<pre class="last literal-block">
|
||||
@@ -109,11 +108,11 @@ struct r : <a href="./equal-to.html" class="identifier">equal_to</a><c1,c2>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="comparisons-equal-complexity">
|
||||
<div class="section" id="id1056">
|
||||
<h3><a class="subsection-title" href="#complexity" name="complexity">Complexity</a></h3>
|
||||
<p>Amortized constant time.</p>
|
||||
</div>
|
||||
<div class="section" id="comparisons-equal-example">
|
||||
<div class="section" id="id1057">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
<a href="./assert-not.html" class="identifier">BOOST_MPL_ASSERT_NOT</a>(( <a href="./equal-to.html" class="identifier">equal_to</a>< <a href="./int.html" class="identifier">int_</a><0>, <a href="./int.html" class="identifier">int_</a><10> > ));
|
||||
@@ -121,15 +120,16 @@ struct r : <a href="./equal-to.html" class="identifier">equal_to</a><c1,c2>
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( <a href="./equal-to.html" class="identifier">equal_to</a>< <a href="./long.html" class="identifier">long_</a><10>, <a href="./int.html" class="identifier">int_</a><10> > ));
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="comparisons-equal-see-also">
|
||||
<div class="section" id="id1058">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./comparisons.html">Comparisons</a>, <a class="reference" href="./numeric-metafunction.html">Numeric Metafunction</a>, <a class="refentry reference" href="./numeric-cast.html"><tt class="refentry literal"><span class="pre">numeric_cast</span></tt></a>, <a class="refentry reference" href="./not-equal-to.html"><tt class="refentry literal"><span class="pre">not_equal_to</span></tt></a>, <a class="refentry reference" href="./less.html"><tt class="refentry literal"><span class="pre">less</span></tt></a></p>
|
||||
<!-- modtime: November 10, 2004 04:42:40 +0000 -->
|
||||
<p><a class="reference internal" href="./comparisons.html">Comparisons</a>, <a class="reference internal" href="./numeric-metafunction.html">Numeric Metafunction</a>, <a class="reference internal" href="./numeric-cast.html">numeric_cast</a>, <a class="reference internal" href="./not-equal-to.html">not_equal_to</a>, <a class="reference internal" href="./less.html">less</a></p>
|
||||
<!-- Metafunctions/Comparisons//not_equal_to |60 -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./greater-equal.html" class="navigation-link">Prev</a> <a href="./not-equal-to.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./greater-equal.html" class="navigation-link">Back</a> <a href="./not-equal-to.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./comparisons.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+28
-29
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: equal</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,14 +12,14 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./algorithms.html" class="navigation-link">Algorithms</a> / <a href="./querying-algorithms.html" class="navigation-link">Querying Algorithms</a> / <a href="./equal.html" class="navigation-link">equal</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="equal">
|
||||
<h1><a class="toc-backref" href="./querying-algorithms.html#id412" name="equal">equal</a></h1>
|
||||
<div class="section" id="equal-synopsis">
|
||||
<h1><a class="toc-backref" href="./querying-algorithms.html#id1484">equal</a></h1>
|
||||
<div class="section" id="id607">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
typename Seq1
|
||||
, typename Seq2
|
||||
, typename Pred = is_same<_1,_2>
|
||||
, typename Pred = is_same<<a href="./placeholders.html" class="identifier">_1</a>,<a href="./placeholders.html" class="identifier">_2</a>>
|
||||
>
|
||||
struct <a href="./equal.html" class="identifier">equal</a>
|
||||
{
|
||||
@@ -30,56 +27,57 @@ struct <a href="./equal.html" class="identifier">equal</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="equal-description">
|
||||
<div class="section" id="id608">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Returns a true-valued <a class="reference" href="./integral-constant.html">Integral Constant</a> if the two sequences <tt class="literal"><span class="pre">Seq1</span></tt>
|
||||
<p>Returns a true-valued <a class="reference internal" href="./integral-constant.html">Integral Constant</a> if the two sequences <tt class="literal"><span class="pre">Seq1</span></tt>
|
||||
and <tt class="literal"><span class="pre">Seq2</span></tt> are identical when compared element-by-element.</p>
|
||||
</div>
|
||||
<div class="section" id="equal-header">
|
||||
<div class="section" id="id609">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/equal.hpp" class="header">boost/mpl/equal.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="equal-parameters">
|
||||
<div class="section" id="id610">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="22%" />
|
||||
<col width="36%" />
|
||||
<col width="41%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">Seq1</span></tt>, <tt class="literal"><span class="pre">Seq2</span></tt></td>
|
||||
<td><a class="reference" href="./forward-sequence.html">Forward Sequence</a></td>
|
||||
<td><a class="reference internal" href="./forward-sequence.html">Forward Sequence</a></td>
|
||||
<td>Sequences to compare.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre">Pred</span></tt></td>
|
||||
<td>Binary <a class="reference" href="./lambda-expression.html">Lambda Expression</a></td>
|
||||
<td>Binary <a class="reference internal" href="./lambda-expression.html">Lambda Expression</a></td>
|
||||
<td>A comparison criterion.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="equal-expression-semantics">
|
||||
<div class="section" id="id611">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For any <a class="reference" href="./forward-sequence.html">Forward Sequence</a>s <tt class="literal"><span class="pre">s1</span></tt> and <tt class="literal"><span class="pre">s2</span></tt> and a binary <a class="reference" href="./lambda-expression.html">Lambda Expression</a> <tt class="literal"><span class="pre">pred</span></tt>:</p>
|
||||
<p>For any <a class="reference internal" href="./forward-sequence.html">Forward Sequence</a>s <tt class="literal"><span class="pre">s1</span></tt> and <tt class="literal"><span class="pre">s2</span></tt> and a binary <a class="reference internal" href="./lambda-expression.html">Lambda Expression</a> <tt class="literal"><span class="pre">pred</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./equal.html" class="identifier">equal</a><s1,s2,pred>::type c;
|
||||
typedef <a href="./equal.html" class="identifier">equal</a><s1,s2,pred>::type c;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference" href="./integral-constant.html">Integral Constant</a></td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><a class="reference internal" href="./integral-constant.html">Integral Constant</a></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first"><tt class="literal"><span class="pre">c::value</span> <span class="pre">==</span> <span class="pre">true</span></tt> is and only if <tt class="literal"><span class="pre"><a href="./size.html" class="identifier">size</a><s1>::value</span> <span class="pre">==</span> <span class="pre"><a href="./size.html" class="identifier">size</a><s2>::value</span></tt>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first"><tt class="literal"><span class="pre">c::value</span> <span class="pre">==</span> <span class="pre">true</span></tt> is and only if <tt class="literal"><span class="pre"><a href="./size.html" class="identifier">size</a><s1>::value</span> <span class="pre">==</span> <span class="pre"><a href="./size.html" class="identifier">size</a><s2>::value</span></tt>
|
||||
and for every iterator <tt class="literal"><span class="pre">i</span></tt> in [<tt class="literal"><span class="pre"><a href="./begin.html" class="identifier">begin</a><s1>::type</span></tt>, <tt class="literal"><span class="pre"><a href="./end.html" class="identifier">end</a><s1>::type</span></tt>) <tt class="literal"><span class="pre"><a href="./deref.html" class="identifier">deref</a><i>::type</span></tt> is identical to</p>
|
||||
<pre class="last literal-block">
|
||||
<a href="./advance.html" class="identifier">advance</a>< <a href="./begin.html" class="identifier">begin</a><s2>::type, <a href="./distance.html" class="identifier">distance</a>< <a href="./begin.html" class="identifier">begin</a><s1>::type,i >::type >::type
|
||||
@@ -89,11 +87,11 @@ and for every iterator <tt class="literal"><span class="pre">i</span></tt> in [<
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="equal-complexity">
|
||||
<div class="section" id="id612">
|
||||
<h3><a class="subsection-title" href="#complexity" name="complexity">Complexity</a></h3>
|
||||
<p>Linear. At most <tt class="literal"><span class="pre"><a href="./size.html" class="identifier">size</a><s1>::value</span></tt> comparisons.</p>
|
||||
</div>
|
||||
<div class="section" id="equal-example">
|
||||
<div class="section" id="id613">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./vector.html" class="identifier">vector</a><char,int,unsigned,long,unsigned long> s1;
|
||||
@@ -102,14 +100,15 @@ typedef <a href="./list.html" class="identifier">list</a><char,int,unsigned,l
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( <a href="./equal.html" class="identifier">equal</a><s1,s2> ));
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="equal-see-also">
|
||||
<div class="section" id="id614">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./querying-algorithms.html">Querying Algorithms</a>, <a class="refentry reference" href="./find.html"><tt class="refentry literal"><span class="pre">find</span></tt></a>, <a class="refentry reference" href="./find-if.html"><tt class="refentry literal"><span class="pre">find_if</span></tt></a></p>
|
||||
<!-- modtime: November 10, 2004 04:42:44 +0000 -->
|
||||
<p><a class="reference internal" href="./querying-algorithms.html">Querying Algorithms</a>, <a class="reference internal" href="./find.html">find</a>, <a class="reference internal" href="./find-if.html">find_if</a></p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./max-element.html" class="navigation-link">Prev</a> <a href="./transformation-algorithms.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./max-element.html" class="navigation-link">Back</a> Along</span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./querying-algorithms.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: erase_key</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,8 +12,8 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./sequences.html" class="navigation-link">Sequences</a> / <a href="./intrinsic-metafunctions.html" class="navigation-link">Intrinsic Metafunctions</a> / <a href="./erase-key.html" class="navigation-link">erase_key</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="erase-key">
|
||||
<h1><a class="toc-backref" href="./intrinsic-metafunctions.html#id361" name="erase-key">erase_key</a></h1>
|
||||
<div class="section" id="intrinsic-erase-synopsis">
|
||||
<h1><a class="toc-backref" href="./intrinsic-metafunctions.html#id1433">erase_key</a></h1>
|
||||
<div class="section" id="id247">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
@@ -29,38 +26,38 @@ struct <a href="./erase-key.html" class="identifier">erase_key</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="intrinsic-erase-description">
|
||||
<div class="section" id="id248">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Erases elements associated with the key <tt class="literal"><span class="pre">Key</span></tt> in the <a class="reference" href="./extensible-associative.html">Extensible Associative Sequence</a>
|
||||
<p>Erases elements associated with the key <tt class="literal"><span class="pre">Key</span></tt> in the <a class="reference internal" href="./extensible-associative-sequence.html">Extensible Associative Sequence</a>
|
||||
<tt class="literal"><span class="pre">AssocSeq</span></tt> .</p>
|
||||
</div>
|
||||
<div class="section" id="intrinsic-erase-header">
|
||||
<div class="section" id="id249">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/erase_key.hpp" class="header">boost/mpl/erase_key.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="intrinsic-erase-model-of">
|
||||
<div class="section" id="id250">
|
||||
<h3><a class="subsection-title" href="#model-of" name="model-of">Model of</a></h3>
|
||||
<p><a class="reference" href="./tag-dispatched.html">Tag Dispatched Metafunction</a></p>
|
||||
<p><a class="reference internal" href="./tag-dispatched-metafunction.html">Tag Dispatched Metafunction</a></p>
|
||||
</div>
|
||||
<div class="section" id="intrinsic-erase-parameters">
|
||||
<div class="section" id="id251">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="15%" />
|
||||
<col width="36%" />
|
||||
<col width="48%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">AssocSeq</span></tt></td>
|
||||
<td><a class="reference" href="./extensible-associative.html">Extensible Associative Sequence</a></td>
|
||||
<td><a class="reference internal" href="./extensible-associative-sequence.html">Extensible Associative Sequence</a></td>
|
||||
<td>A sequence to erase elements from.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre">Key</span></tt></td>
|
||||
@@ -70,19 +67,19 @@ struct <a href="./erase-key.html" class="identifier">erase_key</a>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="intrinsic-erase-expression-semantics">
|
||||
<div class="section" id="id252">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For any <a class="reference" href="./extensible-associative.html">Extensible Associative Sequence</a> <tt class="literal"><span class="pre">s</span></tt>, and arbitrary type <tt class="literal"><span class="pre">key</span></tt>:</p>
|
||||
<p>For any <a class="reference internal" href="./extensible-associative-sequence.html">Extensible Associative Sequence</a> <tt class="literal"><span class="pre">s</span></tt>, and arbitrary type <tt class="literal"><span class="pre">key</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./erase-key.html" class="identifier">erase_key</a><s,key>::type r;
|
||||
typedef <a href="./erase-key.html" class="identifier">erase_key</a><s,key>::type r;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference" href="./extensible-associative.html">Extensible Associative Sequence</a>.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference internal" href="./extensible-associative-sequence.html">Extensible Associative Sequence</a>.</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><tt class="literal"><span class="pre">r</span></tt> is <a class="reference" href="./terminology.html#concept-identical">concept-identical</a> and equivalent to <tt class="literal"><span class="pre">s</span></tt> except that
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><tt class="literal"><span class="pre">r</span></tt> is <a class="reference internal" href="./terminology.html#concept-identical">concept-identical</a> and equivalent to <tt class="literal"><span class="pre">s</span></tt> except that
|
||||
<tt class="literal"><span class="pre"><a href="./has-key.html" class="identifier">has_key</a><r,k>::value</span> <span class="pre">==</span> <span class="pre">false</span></tt>.</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Postcondition:</th><td class="field-body"><tt class="literal"><span class="pre"><a href="./size.html" class="identifier">size</a><r>::value</span> <span class="pre">==</span> <span class="pre"><a href="./size.html" class="identifier">size</a><s>::value</span> <span class="pre">-</span> <span class="pre">1</span></tt>.</td>
|
||||
@@ -90,11 +87,11 @@ typedef <a href="./erase-key.html" class="identifier">erase_key</a><s,key>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="intrinsic-erase-complexity">
|
||||
<div class="section" id="id253">
|
||||
<h3><a class="subsection-title" href="#complexity" name="complexity">Complexity</a></h3>
|
||||
<p>Amortized constant time.</p>
|
||||
</div>
|
||||
<div class="section" id="intrinsic-erase-example">
|
||||
<div class="section" id="id254">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./map.html" class="identifier">map</a>< <a href="./pair.html" class="identifier">pair</a><int,unsigned>, <a href="./pair.html" class="identifier">pair</a><char,long> > m;
|
||||
@@ -105,15 +102,16 @@ typedef <a href="./erase-key.html" class="identifier">erase_key</a><m,char>
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( is_same< <a href="./at.html" class="identifier">at</a><m1,int>::type,unsigned > ));
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="intrinsic-erase-see-also">
|
||||
<div class="section" id="id255">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./extensible-associative.html">Extensible Associative Sequence</a>, <a class="refentry reference" href="./erase.html"><tt class="refentry literal"><span class="pre">erase</span></tt></a>, <a class="refentry reference" href="./has-key.html"><tt class="refentry literal"><span class="pre">has_key</span></tt></a>, <a class="refentry reference" href="./insert.html"><tt class="refentry literal"><span class="pre">insert</span></tt></a></p>
|
||||
<!-- modtime: November 10, 2004 04:42:33 +0000 -->
|
||||
<p><a class="reference internal" href="./extensible-associative-sequence.html">Extensible Associative Sequence</a>, <a class="reference internal" href="./erase.html">erase</a>, <a class="reference internal" href="./has-key.html">has_key</a>, <a class="reference internal" href="./insert.html">insert</a></p>
|
||||
<!-- Sequences/Intrinsic Metafunctions//front -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./erase.html" class="navigation-link">Prev</a> <a href="./front.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./erase.html" class="navigation-link">Back</a> <a href="./front.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./intrinsic-metafunctions.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+48
-45
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: erase</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,8 +12,8 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./sequences.html" class="navigation-link">Sequences</a> / <a href="./intrinsic-metafunctions.html" class="navigation-link">Intrinsic Metafunctions</a> / <a href="./erase.html" class="navigation-link">erase</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="erase">
|
||||
<h1><a class="toc-backref" href="./intrinsic-metafunctions.html#id360" name="erase">erase</a></h1>
|
||||
<div class="section" id="erase-synopsis">
|
||||
<h1><a class="toc-backref" href="./intrinsic-metafunctions.html#id1432">erase</a></h1>
|
||||
<div class="section" id="id238">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
@@ -30,71 +27,74 @@ struct <a href="./erase.html" class="identifier">erase</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="erase-description">
|
||||
<div class="section" id="id239">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p><tt class="literal"><span class="pre"><a href="./erase.html" class="identifier">erase</a></span></tt> performs a removal of one or more adjacent elements in the sequence
|
||||
<p><tt class="literal"><span class="pre"><a href="./erase.html" class="identifier">erase</a></span></tt> performs a removal of one or more adjacent elements in the sequence
|
||||
starting from an arbitrary position.</p>
|
||||
</div>
|
||||
<div class="section" id="erase-header">
|
||||
<div class="section" id="id240">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/erase.hpp" class="header">boost/mpl/erase.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="erase-model-of">
|
||||
<div class="section" id="id241">
|
||||
<h3><a class="subsection-title" href="#model-of" name="model-of">Model of</a></h3>
|
||||
<p><a class="reference" href="./tag-dispatched.html">Tag Dispatched Metafunction</a></p>
|
||||
<p><a class="reference internal" href="./tag-dispatched-metafunction.html">Tag Dispatched Metafunction</a></p>
|
||||
</div>
|
||||
<div class="section" id="erase-parameters">
|
||||
<div class="section" id="id242">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="15%" />
|
||||
<col width="36%" />
|
||||
<col width="48%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">Sequence</span></tt></td>
|
||||
<td><a class="reference" href="./extensible-sequence.html">Extensible Sequence</a> or
|
||||
<a class="reference" href="./extensible-associative.html">Extensible Associative Sequence</a></td>
|
||||
<td><a class="reference internal" href="./extensible-sequence.html">Extensible Sequence</a> or
|
||||
<a class="reference internal" href="./extensible-associative-sequence.html">Extensible Associative Sequence</a></td>
|
||||
<td>A sequence to erase from.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre">First</span></tt></td>
|
||||
<td><a class="reference" href="./forward-iterator.html">Forward Iterator</a></td>
|
||||
<td><a class="reference internal" href="./forward-iterator.html">Forward Iterator</a></td>
|
||||
<td>An iterator to the beginning of the range to
|
||||
be erased.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre">Last</span></tt></td>
|
||||
<td><a class="reference" href="./forward-iterator.html">Forward Iterator</a></td>
|
||||
<td><a class="reference internal" href="./forward-iterator.html">Forward Iterator</a></td>
|
||||
<td>An iterator past-the-end of the range to be
|
||||
erased.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="erase-expression-semantics">
|
||||
<div class="section" id="id243">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<div class="expression-semantics compound">
|
||||
<p class="compound-first">For any <a class="reference" href="./extensible-sequence.html">Extensible Sequence</a> <tt class="literal"><span class="pre">s</span></tt>, and iterators <tt class="literal"><span class="pre">pos</span></tt>, <tt class="literal"><span class="pre">first</span></tt> and <tt class="literal"><span class="pre">last</span></tt> into <tt class="literal"><span class="pre">s</span></tt>:</p>
|
||||
<p class="compound-first">For any <a class="reference internal" href="./extensible-sequence.html">Extensible Sequence</a> <tt class="literal"><span class="pre">s</span></tt>, and iterators <tt class="literal"><span class="pre">pos</span></tt>, <tt class="literal"><span class="pre">first</span></tt> and <tt class="literal"><span class="pre">last</span></tt> into <tt class="literal"><span class="pre">s</span></tt>:</p>
|
||||
<pre class="compound-middle literal-block">
|
||||
typedef <a href="./erase.html" class="identifier">erase</a><s,first,last>::type r;
|
||||
typedef <a href="./erase.html" class="identifier">erase</a><s,first,last>::type r;
|
||||
</pre>
|
||||
<table class="compound-middle field-list" frame="void" rules="none">
|
||||
<table class="compound-middle docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference" href="./extensible-sequence.html">Extensible Sequence</a>.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><a class="reference internal" href="./extensible-sequence.html">Extensible Sequence</a>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body"><tt class="literal"><span class="pre">[first,last)</span></tt> is a valid range in <tt class="literal"><span class="pre">s</span></tt>.</td>
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body"><p class="first"><tt class="literal"><span class="pre">[first,last)</span></tt> is a valid range in <tt class="literal"><span class="pre">s</span></tt>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><tt class="literal"><span class="pre">r</span></tt> is a new sequence, <a class="reference" href="./terminology.html#concept-identical">concept-identical</a> to <tt class="literal"><span class="pre">s</span></tt>, of the following elements:
|
||||
[<tt class="literal"><span class="pre"><a href="./begin.html" class="identifier">begin</a><s>::type</span></tt>, <tt class="literal"><span class="pre">pos</span></tt>), [<tt class="literal"><span class="pre">last</span></tt>, <tt class="literal"><span class="pre"><a href="./end.html" class="identifier">end</a><s>::type</span></tt>).</td>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first"><tt class="literal"><span class="pre">r</span></tt> is a new sequence, <a class="reference internal" href="./terminology.html#concept-identical">concept-identical</a> to <tt class="literal"><span class="pre">s</span></tt>, of the following elements:
|
||||
[<tt class="literal"><span class="pre"><a href="./begin.html" class="identifier">begin</a><s>::type</span></tt>, <tt class="literal"><span class="pre">pos</span></tt>), [<tt class="literal"><span class="pre">last</span></tt>, <tt class="literal"><span class="pre"><a href="./end.html" class="identifier">end</a><s>::type</span></tt>).</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Postcondition:</th><td class="field-body"><p class="first">The relative order of the elements in <tt class="literal"><span class="pre">r</span></tt> is the same as in <tt class="literal"><span class="pre">s</span></tt>;</p>
|
||||
<pre class="last literal-block">
|
||||
@@ -108,13 +108,15 @@ typedef <a href="./erase.html" class="identifier">erase</a><s,first,last>:
|
||||
<pre class="compound-middle literal-block">
|
||||
typedef <a href="./erase.html" class="identifier">erase</a><s,pos>::type r;
|
||||
</pre>
|
||||
<table class="compound-last field-list" frame="void" rules="none">
|
||||
<table class="compound-last docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference" href="./extensible-sequence.html">Extensible Sequence</a>.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><a class="reference internal" href="./extensible-sequence.html">Extensible Sequence</a>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body"><tt class="literal"><span class="pre">pos</span></tt> is a dereferenceable iterator in <tt class="literal"><span class="pre">s</span></tt>.</td>
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body"><p class="first"><tt class="literal"><span class="pre">pos</span></tt> is a dereferenceable iterator in <tt class="literal"><span class="pre">s</span></tt>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Equivalent to</p>
|
||||
<pre class="last literal-block">
|
||||
@@ -126,15 +128,15 @@ typedef <a href="./erase.html" class="identifier">erase</a>< s,pos,<a href=".
|
||||
</table>
|
||||
</div>
|
||||
<div class="expression-semantics compound">
|
||||
<p class="compound-first">For any <a class="reference" href="./extensible-associative.html">Extensible Associative Sequence</a> <tt class="literal"><span class="pre">s</span></tt>, and iterator <tt class="literal"><span class="pre">pos</span></tt> into <tt class="literal"><span class="pre">s</span></tt>:</p>
|
||||
<p class="compound-first">For any <a class="reference internal" href="./extensible-associative-sequence.html">Extensible Associative Sequence</a> <tt class="literal"><span class="pre">s</span></tt>, and iterator <tt class="literal"><span class="pre">pos</span></tt> into <tt class="literal"><span class="pre">s</span></tt>:</p>
|
||||
<pre class="compound-middle literal-block">
|
||||
typedef <a href="./erase.html" class="identifier">erase</a><s,pos>::type r;
|
||||
</pre>
|
||||
<table class="compound-last field-list" frame="void" rules="none">
|
||||
<table class="compound-last docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference" href="./extensible-sequence.html">Extensible Sequence</a>.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference internal" href="./extensible-sequence.html">Extensible Sequence</a>.</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body"><tt class="literal"><span class="pre">pos</span></tt> is a dereferenceable iterator to <tt class="literal"><span class="pre">s</span></tt>.</td>
|
||||
</tr>
|
||||
@@ -147,29 +149,29 @@ typedef <a href="./erase.html" class="identifier">erase</a><s,pos>::type r
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
<div class="section" id="erase-complexity">
|
||||
<div class="section" id="id244">
|
||||
<h3><a class="subsection-title" href="#complexity" name="complexity">Complexity</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="45%" />
|
||||
<col width="55%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Sequence archetype</th>
|
||||
<th>Complexity (the range form)</th>
|
||||
<tr><th class="head">Sequence archetype</th>
|
||||
<th class="head">Complexity (the range form)</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><a class="reference" href="./extensible-associative.html">Extensible Associative Sequence</a></td>
|
||||
<tr><td><a class="reference internal" href="./extensible-associative-sequence.html">Extensible Associative Sequence</a></td>
|
||||
<td>Amortized constant time.</td>
|
||||
</tr>
|
||||
<tr><td><a class="reference" href="./extensible-sequence.html">Extensible Sequence</a></td>
|
||||
<tr><td><a class="reference internal" href="./extensible-sequence.html">Extensible Sequence</a></td>
|
||||
<td>Quadratic in the worst case, linear at best.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="erase-example">
|
||||
<div class="section" id="id245">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./vector-c.html" class="identifier">vector_c</a><int,1,0,5,1,7,5,0,5> values;
|
||||
@@ -182,15 +184,16 @@ typedef <a href="./find.html" class="identifier">find</a><result, <a href="./
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( is_same< iter, <a href="./end.html" class="identifier">end</a><result>::type > ));
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="erase-see-also">
|
||||
<div class="section" id="id246">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./extensible-sequence.html">Extensible Sequence</a>, <a class="reference" href="./extensible-associative.html">Extensible Associative Sequence</a>, <a class="refentry reference" href="./erase-key.html"><tt class="refentry literal"><span class="pre">erase_key</span></tt></a>, <a class="refentry reference" href="./pop-front.html"><tt class="refentry literal"><span class="pre">pop_front</span></tt></a>, <a class="refentry reference" href="./pop-back.html"><tt class="refentry literal"><span class="pre">pop_back</span></tt></a>, <a class="refentry reference" href="./insert.html"><tt class="refentry literal"><span class="pre">insert</span></tt></a></p>
|
||||
<!-- modtime: November 10, 2004 04:42:36 +0000 -->
|
||||
<p><a class="reference internal" href="./extensible-sequence.html">Extensible Sequence</a>, <a class="reference internal" href="./extensible-associative-sequence.html">Extensible Associative Sequence</a>, <a class="reference internal" href="./erase-key.html">erase_key</a>, <a class="reference internal" href="./pop-front.html">pop_front</a>, <a class="reference internal" href="./pop-back.html">pop_back</a>, <a class="reference internal" href="./insert.html">insert</a></p>
|
||||
<!-- Sequences/Intrinsic Metafunctions//erase_key -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./end.html" class="navigation-link">Prev</a> <a href="./erase-key.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./end.html" class="navigation-link">Back</a> <a href="./erase-key.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./intrinsic-metafunctions.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: eval_if_c</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,11 +12,11 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./metafunctions.html" class="navigation-link">Metafunctions</a> / <a href="./type-selection.html" class="navigation-link">Type Selection</a> / <a href="./eval-if-c.html" class="navigation-link">eval_if_c</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="eval-if-c">
|
||||
<h1><a class="toc-backref" href="./type-selection.html#id449" name="eval-if-c">eval_if_c</a></h1>
|
||||
<div class="section" id="type-eval-synopsis">
|
||||
<h1><a class="toc-backref" href="./type-selection.html#id1523">eval_if_c</a></h1>
|
||||
<div class="section" id="id880">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
template<
|
||||
bool c
|
||||
, typename F1
|
||||
, typename F2
|
||||
@@ -30,30 +27,30 @@ struct <a href="./eval-if-c.html" class="identifier">eval_if_c</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="type-eval-description">
|
||||
<div class="section" id="id881">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Evaluates one of its two <a class="reference" href="./metafunction.html#nullary-metafunction">nullary-metafunction</a> arguments, <tt class="literal"><span class="pre">F1</span></tt> or <tt class="literal"><span class="pre">F2</span></tt>, depending
|
||||
on the value of integral constant <tt class="literal"><span class="pre">c</span></tt>. <tt class="literal"><span class="pre"><a href="./eval-if-c.html" class="identifier">eval_if_c</a><c,f1,f2>::type</span></tt> is a shorcut
|
||||
<p>Evaluates one of its two <a class="reference internal" href="./metafunction.html#nullary-metafunction">nullary-metafunction</a> arguments, <tt class="literal"><span class="pre">F1</span></tt> or <tt class="literal"><span class="pre">F2</span></tt>, depending
|
||||
on the value of integral constant <tt class="literal"><span class="pre">c</span></tt>. <tt class="literal"><span class="pre"><a href="./eval-if-c.html" class="identifier">eval_if_c</a><c,f1,f2>::type</span></tt> is a shorcut
|
||||
notation for <tt class="literal"><span class="pre"><a href="./eval-if.html" class="identifier">eval_if</a><</span> <span class="pre"><a href="./bool.html" class="identifier">bool_</a><c>,f1,f2</span> <span class="pre">>::type</span></tt>.</p>
|
||||
</div>
|
||||
<div class="section" id="type-eval-header">
|
||||
<div class="section" id="id882">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/eval_if.hpp" class="header">boost/mpl/eval_if.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="type-eval-parameters">
|
||||
<div class="section" id="id883">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="15%" />
|
||||
<col width="36%" />
|
||||
<col width="48%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
@@ -62,19 +59,19 @@ notation for <tt class="literal"><span class="pre"><a href="./eval-if.html" clas
|
||||
<td>An evaluation condition.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre">F1</span></tt>, <tt class="literal"><span class="pre">F2</span></tt></td>
|
||||
<td>Nullary <a class="reference" href="./metafunction.html">Metafunction</a></td>
|
||||
<td>Nullary <a class="reference internal" href="./metafunction.html">Metafunction</a></td>
|
||||
<td>Metafunctions to select for evaluation from.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="type-eval-expression-semantics">
|
||||
<div class="section" id="id884">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For any integral constant <tt class="literal"><span class="pre">c</span></tt> and nullary <a class="reference" href="./metafunction.html">Metafunction</a>s <tt class="literal"><span class="pre">f1</span></tt>, <tt class="literal"><span class="pre">f2</span></tt>:</p>
|
||||
<p>For any integral constant <tt class="literal"><span class="pre">c</span></tt> and nullary <a class="reference internal" href="./metafunction.html">Metafunction</a>s <tt class="literal"><span class="pre">f1</span></tt>, <tt class="literal"><span class="pre">f2</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./eval-if-c.html" class="identifier">eval_if_c</a><c,f1,f2>::type t;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
@@ -85,7 +82,7 @@ typedef <a href="./eval-if-c.html" class="identifier">eval_if_c</a><c,f1,f2&g
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="type-eval-example">
|
||||
<div class="section" id="id885">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./eval-if-c.html" class="identifier">eval_if_c</a>< true, <a href="./identity.html" class="identifier">identity</a><char>, <a href="./identity.html" class="identifier">identity</a><long> >::type t1;
|
||||
@@ -95,14 +92,15 @@ typedef <a href="./eval-if-c.html" class="identifier">eval_if_c</a>< false, <
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( is_same<t2,long> ));
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="type-eval-see-also">
|
||||
<div class="section" id="id886">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./metafunctions.html">Metafunctions</a>, <a class="reference" href="./integral-constant.html">Integral Constant</a>, <a class="refentry reference" href="./eval-if.html"><tt class="refentry literal"><span class="pre">eval_if</span></tt></a>, <a class="refentry reference" href="./if.html"><tt class="refentry literal"><span class="pre">if_</span></tt></a>, <a class="refentry reference" href="./bool.html"><tt class="refentry literal"><span class="pre">bool_</span></tt></a></p>
|
||||
<!-- modtime: November 10, 2004 04:42:25 +0000 -->
|
||||
<p><a class="reference internal" href="./metafunctions.html">Metafunctions</a>, <a class="reference internal" href="./integral-constant.html">Integral Constant</a>, <a class="reference internal" href="./eval-if.html">eval_if</a>, <a class="reference internal" href="./if.html">if_</a>, <a class="reference internal" href="./bool.html">bool_</a></p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./eval-if.html" class="navigation-link">Prev</a> <a href="./invocation.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./eval-if.html" class="navigation-link">Back</a> Along</span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./type-selection.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+26
-28
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: eval_if</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,11 +12,11 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./metafunctions.html" class="navigation-link">Metafunctions</a> / <a href="./type-selection.html" class="navigation-link">Type Selection</a> / <a href="./eval-if.html" class="navigation-link">eval_if</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="eval-if">
|
||||
<h1><a class="toc-backref" href="./type-selection.html#id448" name="eval-if">eval_if</a></h1>
|
||||
<div class="section" id="eval-synopsis">
|
||||
<h1><a class="toc-backref" href="./type-selection.html#id1522">eval_if</a></h1>
|
||||
<div class="section" id="id873">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
template<
|
||||
typename C
|
||||
, typename F1
|
||||
, typename F2
|
||||
@@ -30,80 +27,81 @@ struct <a href="./eval-if.html" class="identifier">eval_if</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="eval-description">
|
||||
<div class="section" id="id874">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Evaluates one of its two <a class="reference" href="./metafunction.html#nullary-metafunction">nullary-metafunction</a> arguments, <tt class="literal"><span class="pre">F1</span></tt> or <tt class="literal"><span class="pre">F2</span></tt>, depending
|
||||
<p>Evaluates one of its two <a class="reference internal" href="./metafunction.html#nullary-metafunction">nullary-metafunction</a> arguments, <tt class="literal"><span class="pre">F1</span></tt> or <tt class="literal"><span class="pre">F2</span></tt>, depending
|
||||
on the value <tt class="literal"><span class="pre">C</span></tt>.</p>
|
||||
</div>
|
||||
<div class="section" id="eval-header">
|
||||
<div class="section" id="id875">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/eval_if.hpp" class="header">boost/mpl/eval_if.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="eval-parameters">
|
||||
<div class="section" id="id876">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="15%" />
|
||||
<col width="36%" />
|
||||
<col width="48%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">C</span></tt></td>
|
||||
<td><a class="reference" href="./integral-constant.html">Integral Constant</a></td>
|
||||
<td><a class="reference internal" href="./integral-constant.html">Integral Constant</a></td>
|
||||
<td>An evaluation condition.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre">F1</span></tt>, <tt class="literal"><span class="pre">F2</span></tt></td>
|
||||
<td>Nullary <a class="reference" href="./metafunction.html">Metafunction</a></td>
|
||||
<td>Nullary <a class="reference internal" href="./metafunction.html">Metafunction</a></td>
|
||||
<td>Metafunctions to select for evaluation from.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="eval-expression-semantics">
|
||||
<div class="section" id="id877">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For any <a class="reference" href="./integral-constant.html">Integral Constant</a> <tt class="literal"><span class="pre">c</span></tt> and nullary <a class="reference" href="./metafunction.html">Metafunction</a>s <tt class="literal"><span class="pre">f1</span></tt>, <tt class="literal"><span class="pre">f2</span></tt>:</p>
|
||||
<p>For any <a class="reference internal" href="./integral-constant.html">Integral Constant</a> <tt class="literal"><span class="pre">c</span></tt> and nullary <a class="reference internal" href="./metafunction.html">Metafunction</a>s <tt class="literal"><span class="pre">f1</span></tt>, <tt class="literal"><span class="pre">f2</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./eval-if.html" class="identifier">eval_if</a><c,f1,f2>::type t;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body">Any type.</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body">If <tt class="literal"><span class="pre">c::value</span> <span class="pre">==</span> <span class="pre">true</span></tt>, <tt class="literal"><span class="pre">t</span></tt> is identical to <tt class="literal"><span class="pre">f1::type</span></tt>; otherwise <tt class="literal"><span class="pre">t</span></tt> is
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body">If <tt class="literal"><span class="pre">c::value</span> <span class="pre">==</span> <span class="pre">true</span></tt>, <tt class="literal"><span class="pre">t</span></tt> is identical to <tt class="literal"><span class="pre">f1::type</span></tt>; otherwise <tt class="literal"><span class="pre">t</span></tt> is
|
||||
identical to <tt class="literal"><span class="pre">f2::type</span></tt>.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="eval-example">
|
||||
<div class="section" id="id878">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./eval-if.html" class="identifier">eval_if</a>< true_, <a href="./identity.html" class="identifier">identity</a><char>, <a href="./identity.html" class="identifier">identity</a><long> >::type t1;
|
||||
typedef <a href="./eval-if.html" class="identifier">eval_if</a>< false_, <a href="./identity.html" class="identifier">identity</a><char>, <a href="./identity.html" class="identifier">identity</a><long> >::type t2;
|
||||
typedef <a href="./eval-if.html" class="identifier">eval_if</a>< <a href="./bool.html" class="identifier">true_</a>, <a href="./identity.html" class="identifier">identity</a><char>, <a href="./identity.html" class="identifier">identity</a><long> >::type t1;
|
||||
typedef <a href="./eval-if.html" class="identifier">eval_if</a>< <a href="./bool.html" class="identifier">false_</a>, <a href="./identity.html" class="identifier">identity</a><char>, <a href="./identity.html" class="identifier">identity</a><long> >::type t2;
|
||||
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( is_same<t1,char> ));
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( is_same<t2,long> ));
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="eval-see-also">
|
||||
<div class="section" id="id879">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./metafunctions.html">Metafunctions</a>, <a class="reference" href="./integral-constant.html">Integral Constant</a>, <a class="refentry reference" href="./eval-if-c.html"><tt class="refentry literal"><span class="pre">eval_if_c</span></tt></a>, <a class="refentry reference" href="./if.html"><tt class="refentry literal"><span class="pre">if_</span></tt></a></p>
|
||||
<!-- modtime: November 10, 2004 04:42:29 +0000 -->
|
||||
<p><a class="reference internal" href="./metafunctions.html">Metafunctions</a>, <a class="reference internal" href="./integral-constant.html">Integral Constant</a>, <a class="reference internal" href="./eval-if-c.html">eval_if_c</a>, <a class="reference internal" href="./if.html">if_</a></p>
|
||||
<!-- Metafunctions/Type Selection//eval_if_c |40 -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./if-c.html" class="navigation-link">Prev</a> <a href="./eval-if-c.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./if-c.html" class="navigation-link">Back</a> <a href="./eval-if-c.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./type-selection.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+39
-41
@@ -1,81 +1,78 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: Extensible Associative Sequence</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
<body class="docframe refmanual">
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./associative-sequence.html" class="navigation-link">Prev</a> <a href="./integral-sequence-wrapper.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./associative-sequence.html" class="navigation-link">Back</a> <a href="./integral-sequence-wrapper.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./concepts.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./sequences.html" class="navigation-link">Sequences</a> / <a href="./concepts.html" class="navigation-link">Concepts</a> / <a href="./extensible-associative.html" class="navigation-link">Extensible Associative Sequence</a></td>
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./sequences.html" class="navigation-link">Sequences</a> / <a href="./concepts.html" class="navigation-link">Concepts</a> / <a href="./extensible-associative-sequence.html" class="navigation-link">Extensible Associative Sequence</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="extensible-associative">
|
||||
<h1><a class="toc-backref" href="./concepts.html#id331" name="extensible-associative">Extensible Associative Sequence</a></h1>
|
||||
<div class="section" id="concepts-extensible-description">
|
||||
<div class="section" id="extensible-associative-sequence">
|
||||
<h1><a class="toc-backref" href="./concepts.html#id1402">Extensible Associative Sequence</a></h1>
|
||||
<div class="section" id="id35">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>An <a class="reference" href="./extensible-associative.html">Extensible Associative Sequence</a> is an <a class="reference" href="./associative-sequence.html">Associative Sequence</a> that supports
|
||||
insertion and removal of elements. In contrast to <a class="reference" href="./extensible-sequence.html">Extensible Sequence</a>,
|
||||
<a class="reference" href="./extensible-associative.html">Extensible Associative Sequence</a> does not provide a mechanism for
|
||||
<p>An <a class="reference internal" href="./extensible-associative-sequence.html">Extensible Associative Sequence</a> is an <a class="reference internal" href="./associative-sequence.html">Associative Sequence</a> that supports
|
||||
insertion and removal of elements. In contrast to <a class="reference internal" href="./extensible-sequence.html">Extensible Sequence</a>,
|
||||
<a class="reference internal" href="./extensible-associative-sequence.html">Extensible Associative Sequence</a> does not provide a mechanism for
|
||||
inserting an element at a specific position.</p>
|
||||
</div>
|
||||
<div class="section" id="concepts-extensible-expression-requirements">
|
||||
<div class="section" id="id36">
|
||||
<h3><a class="subsection-title" href="#expression-requirements" name="expression-requirements">Expression requirements</a></h3>
|
||||
<p>In the following table and subsequent specifications, <tt class="literal"><span class="pre">s</span></tt> is an <a class="reference" href="./associative-sequence.html">Associative Sequence</a>,
|
||||
<p>In the following table and subsequent specifications, <tt class="literal"><span class="pre">s</span></tt> is an <a class="reference internal" href="./associative-sequence.html">Associative Sequence</a>,
|
||||
<tt class="literal"><span class="pre">pos</span></tt> is an iterator into <tt class="literal"><span class="pre">s</span></tt>, and <tt class="literal"><span class="pre">x</span></tt> and <tt class="literal"><span class="pre">k</span></tt> are arbitrary types.</p>
|
||||
<p>In addition to the <a class="reference" href="./associative-sequence.html">Associative Sequence</a> requirements, the following must be met:</p>
|
||||
<table border="1" class="table">
|
||||
<p>In addition to the <a class="reference internal" href="./associative-sequence.html">Associative Sequence</a> requirements, the following must be met:</p>
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="32%" />
|
||||
<col width="40%" />
|
||||
<col width="28%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Expression</th>
|
||||
<th>Type</th>
|
||||
<th>Complexity</th>
|
||||
<tr><th class="head">Expression</th>
|
||||
<th class="head">Type</th>
|
||||
<th class="head">Complexity</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./insert.html" class="identifier">insert</a><s,x>::type</span></tt></td>
|
||||
<td><a class="reference" href="./extensible-associative.html">Extensible Associative Sequence</a></td>
|
||||
<td><a class="reference internal" href="./extensible-associative-sequence.html">Extensible Associative Sequence</a></td>
|
||||
<td>Amortized constant time</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./insert.html" class="identifier">insert</a><s,pos,x>::type</span></tt></td>
|
||||
<td><a class="reference" href="./extensible-associative.html">Extensible Associative Sequence</a></td>
|
||||
<td><a class="reference internal" href="./extensible-associative-sequence.html">Extensible Associative Sequence</a></td>
|
||||
<td>Amortized constant time</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./erase-key.html" class="identifier">erase_key</a><s,k>::type</span></tt></td>
|
||||
<td><a class="reference" href="./extensible-associative.html">Extensible Associative Sequence</a></td>
|
||||
<td><a class="reference internal" href="./extensible-associative-sequence.html">Extensible Associative Sequence</a></td>
|
||||
<td>Amortized constant time</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./erase.html" class="identifier">erase</a><s,pos>::type</span></tt></td>
|
||||
<td><a class="reference" href="./extensible-associative.html">Extensible Associative Sequence</a></td>
|
||||
<td><a class="reference internal" href="./extensible-associative-sequence.html">Extensible Associative Sequence</a></td>
|
||||
<td>Amortized constant time</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./clear.html" class="identifier">clear</a><s>::type</span></tt></td>
|
||||
<td><a class="reference" href="./extensible-associative.html">Extensible Associative Sequence</a></td>
|
||||
<td><a class="reference internal" href="./extensible-associative-sequence.html">Extensible Associative Sequence</a></td>
|
||||
<td>Amortized constant time</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="concepts-extensible-expression-semantics">
|
||||
<div class="section" id="id37">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>The semantics of an expression are defined only
|
||||
where they differ from, or are not defined in <a class="reference" href="./associative-sequence.html">Associative Sequence</a>.</p>
|
||||
<table border="1" class="table">
|
||||
where they differ from, or are not defined in <a class="reference internal" href="./associative-sequence.html">Associative Sequence</a>.</p>
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="32%" />
|
||||
<col width="68%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Expression</th>
|
||||
<th>Semantics</th>
|
||||
<tr><th class="head">Expression</th>
|
||||
<th class="head">Semantics</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
@@ -85,50 +82,51 @@ equivalent to <tt class="literal"><span class="pre">s</span></tt> except that</p
|
||||
<pre class="literal-block">
|
||||
<a href="./at.html" class="identifier">at</a>< r, <a href="./key-type.html" class="identifier">key_type</a><s,x>::type >::type
|
||||
</pre>
|
||||
<p class="last">is identical to <tt class="literal"><span class="pre"><a href="./value-type.html" class="identifier">value_type</a><s,x>::type</span></tt>; see <a class="refentry reference" href="./insert.html"><tt class="refentry literal"><span class="pre">insert</span></tt></a>.</p>
|
||||
<p class="last">is identical to <tt class="literal"><span class="pre"><a href="./value-type.html" class="identifier">value_type</a><s,x>::type</span></tt>; see <a class="reference internal" href="./insert.html">insert</a>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./insert.html" class="identifier">insert</a><s,pos,x>::type</span></tt></td>
|
||||
<td>Equivalent to <tt class="literal"><span class="pre"><a href="./insert.html" class="identifier">insert</a><s,x>::type</span></tt>; <tt class="literal"><span class="pre">pos</span></tt> is ignored;
|
||||
see <a class="refentry reference" href="./insert.html"><tt class="refentry literal"><span class="pre">insert</span></tt></a>.</td>
|
||||
see <a class="reference internal" href="./insert.html">insert</a>.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./erase-key.html" class="identifier">erase_key</a><s,k>::type</span></tt></td>
|
||||
<td>Erases elements in <tt class="literal"><span class="pre">s</span></tt> associated with the key <tt class="literal"><span class="pre">k</span></tt>;
|
||||
the resulting sequence <tt class="literal"><span class="pre">r</span></tt> is equivalent to <tt class="literal"><span class="pre">s</span></tt> except
|
||||
that <tt class="literal"><span class="pre"><a href="./has-key.html" class="identifier">has_key</a><r,k>::value</span> <span class="pre">==</span> <span class="pre">false</span></tt>; see <a class="refentry reference" href="./erase-key.html"><tt class="refentry literal"><span class="pre">erase_key</span></tt></a>.</td>
|
||||
that <tt class="literal"><span class="pre"><a href="./has-key.html" class="identifier">has_key</a><r,k>::value</span> <span class="pre">==</span> <span class="pre">false</span></tt>; see <a class="reference internal" href="./erase-key.html">erase_key</a>.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./erase.html" class="identifier">erase</a><s,pos>::type</span></tt></td>
|
||||
<td>Erases the element at a specific position; equivalent to
|
||||
<tt class="literal"><span class="pre"><a href="./erase-key.html" class="identifier">erase_key</a><s,</span> <span class="pre"><a href="./deref.html" class="identifier">deref</a><pos>::type</span> <span class="pre">>::type</span></tt>; see <a class="refentry reference" href="./erase.html"><tt class="refentry literal"><span class="pre">erase</span></tt></a>.</td>
|
||||
<tt class="literal"><span class="pre"><a href="./erase-key.html" class="identifier">erase_key</a><s,</span> <span class="pre"><a href="./deref.html" class="identifier">deref</a><pos>::type</span> <span class="pre">>::type</span></tt>; see <a class="reference internal" href="./erase.html">erase</a>.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./clear.html" class="identifier">clear</a><s>::type</span></tt></td>
|
||||
<td>An empty sequence concept-identical to <tt class="literal"><span class="pre">s</span></tt>; see
|
||||
<a class="refentry reference" href="./clear.html"><tt class="refentry literal"><span class="pre">clear</span></tt></a>.</td>
|
||||
<a class="reference internal" href="./clear.html">clear</a>.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<!-- Invariants
|
||||
- - - - - - - - - -
|
||||
|
||||
For any extensible associative sequence ``s`` the following invariants always hold: -->
|
||||
For any extensible associative sequence ``s`` the following invariants always hold: -->
|
||||
</div>
|
||||
<div class="section" id="concepts-extensible-models">
|
||||
<div class="section" id="id38">
|
||||
<h3><a class="subsection-title" href="#models" name="models">Models</a></h3>
|
||||
<ul class="simple">
|
||||
<li><a class="refentry reference" href="./set.html"><tt class="refentry literal"><span class="pre">set</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./map.html"><tt class="refentry literal"><span class="pre">map</span></tt></a></li>
|
||||
<li><a class="reference internal" href="./set.html">set</a></li>
|
||||
<li><a class="reference internal" href="./map.html">map</a></li>
|
||||
</ul>
|
||||
<!-- * |multiset| -->
|
||||
</div>
|
||||
<div class="section" id="concepts-extensible-see-also">
|
||||
<div class="section" id="id39">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./sequences.html">Sequences</a>, <a class="reference" href="./associative-sequence.html">Associative Sequence</a>, <a class="refentry reference" href="./insert.html"><tt class="refentry literal"><span class="pre">insert</span></tt></a>, <a class="refentry reference" href="./erase.html"><tt class="refentry literal"><span class="pre">erase</span></tt></a>, <a class="refentry reference" href="./clear.html"><tt class="refentry literal"><span class="pre">clear</span></tt></a></p>
|
||||
<!-- modtime: November 13, 2004 00:49:10 +0000 -->
|
||||
<p><a class="reference internal" href="./sequences.html">Sequences</a>, <a class="reference internal" href="./associative-sequence.html">Associative Sequence</a>, <a class="reference internal" href="./insert.html">insert</a>, <a class="reference internal" href="./erase.html">erase</a>, <a class="reference internal" href="./clear.html">clear</a></p>
|
||||
<!-- Sequences/Concepts//Integral Sequence Wrapper |90 -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./associative-sequence.html" class="navigation-link">Prev</a> <a href="./integral-sequence-wrapper.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./associative-sequence.html" class="navigation-link">Back</a> <a href="./integral-sequence-wrapper.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./concepts.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: Extensible Sequence</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,63 +12,63 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./sequences.html" class="navigation-link">Sequences</a> / <a href="./concepts.html" class="navigation-link">Concepts</a> / <a href="./extensible-sequence.html" class="navigation-link">Extensible Sequence</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="extensible-sequence">
|
||||
<h1><a class="toc-backref" href="./concepts.html#id327" name="extensible-sequence">Extensible Sequence</a></h1>
|
||||
<div class="section" id="extensible-description">
|
||||
<h1><a class="toc-backref" href="./concepts.html#id1398">Extensible Sequence</a></h1>
|
||||
<div class="section" id="id12">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>An <a class="reference" href="./extensible-sequence.html">Extensible Sequence</a> is a sequence that supports insertion and removal of
|
||||
<p>An <a class="reference internal" href="./extensible-sequence.html">Extensible Sequence</a> is a sequence that supports insertion and removal of
|
||||
elements. Extensibility is orthogonal to sequence traversal characteristics.</p>
|
||||
</div>
|
||||
<div class="section" id="extensible-expression-requirements">
|
||||
<div class="section" id="id13">
|
||||
<h3><a class="subsection-title" href="#expression-requirements" name="expression-requirements">Expression requirements</a></h3>
|
||||
<p>For any <a class="reference" href="./extensible-sequence.html">Extensible Sequence</a> <tt class="literal"><span class="pre">s</span></tt>, its iterators <tt class="literal"><span class="pre">pos</span></tt> and <tt class="literal"><span class="pre">last</span></tt>,
|
||||
<a class="reference" href="./forward-sequence.html">Forward Sequence</a> <tt class="literal"><span class="pre">r</span></tt>, and any type <tt class="literal"><span class="pre">x</span></tt>, the following expressions must
|
||||
<p>For any <a class="reference internal" href="./extensible-sequence.html">Extensible Sequence</a> <tt class="literal"><span class="pre">s</span></tt>, its iterators <tt class="literal"><span class="pre">pos</span></tt> and <tt class="literal"><span class="pre">last</span></tt>,
|
||||
<a class="reference internal" href="./forward-sequence.html">Forward Sequence</a> <tt class="literal"><span class="pre">r</span></tt>, and any type <tt class="literal"><span class="pre">x</span></tt>, the following expressions must
|
||||
be valid:</p>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="39%" />
|
||||
<col width="30%" />
|
||||
<col width="30%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Expression</th>
|
||||
<th>Type</th>
|
||||
<th>Complexity</th>
|
||||
<tr><th class="head">Expression</th>
|
||||
<th class="head">Type</th>
|
||||
<th class="head">Complexity</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./insert.html" class="identifier">insert</a><s,pos,x>::type</span></tt></td>
|
||||
<td><a class="reference" href="./extensible-sequence.html">Extensible Sequence</a></td>
|
||||
<td><a class="reference internal" href="./extensible-sequence.html">Extensible Sequence</a></td>
|
||||
<td>Unspecified</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./insert-range.html" class="identifier">insert_range</a><s,pos,r>::type</span></tt></td>
|
||||
<td><a class="reference" href="./extensible-sequence.html">Extensible Sequence</a></td>
|
||||
<td><a class="reference internal" href="./extensible-sequence.html">Extensible Sequence</a></td>
|
||||
<td>Unspecified</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./erase.html" class="identifier">erase</a><s,pos>::type</span></tt></td>
|
||||
<td><a class="reference" href="./extensible-sequence.html">Extensible Sequence</a></td>
|
||||
<td><a class="reference internal" href="./extensible-sequence.html">Extensible Sequence</a></td>
|
||||
<td>Unspecified</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./erase.html" class="identifier">erase</a><s,pos,last>::type</span></tt></td>
|
||||
<td><a class="reference" href="./extensible-sequence.html">Extensible Sequence</a></td>
|
||||
<td><a class="reference internal" href="./extensible-sequence.html">Extensible Sequence</a></td>
|
||||
<td>Unspecified</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./clear.html" class="identifier">clear</a><s>::type</span></tt></td>
|
||||
<td><a class="reference" href="./extensible-sequence.html">Extensible Sequence</a></td>
|
||||
<td><a class="reference internal" href="./extensible-sequence.html">Extensible Sequence</a></td>
|
||||
<td>Constant time</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="extensible-expression-semantics">
|
||||
<div class="section" id="id14">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="36%" />
|
||||
<col width="64%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Expression</th>
|
||||
<th>Semantics</th>
|
||||
<tr><th class="head">Expression</th>
|
||||
<th class="head">Semantics</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
@@ -79,50 +76,51 @@ be valid:</p>
|
||||
<td>A new sequence, concept-identical to <tt class="literal"><span class="pre">s</span></tt>, of
|
||||
the following elements:
|
||||
[<tt class="literal"><span class="pre"><a href="./begin.html" class="identifier">begin</a><s>::type</span></tt>, <tt class="literal"><span class="pre">pos</span></tt>), <tt class="literal"><span class="pre">x</span></tt>,
|
||||
[<tt class="literal"><span class="pre">pos</span></tt>, <tt class="literal"><span class="pre"><a href="./end.html" class="identifier">end</a><s>::type</span></tt>); see <a class="refentry reference" href="./insert.html"><tt class="refentry literal"><span class="pre">insert</span></tt></a>.</td>
|
||||
[<tt class="literal"><span class="pre">pos</span></tt>, <tt class="literal"><span class="pre"><a href="./end.html" class="identifier">end</a><s>::type</span></tt>); see <a class="reference internal" href="./insert.html">insert</a>.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./insert-range.html" class="identifier">insert_range</a><s,pos,r>::type</span></tt></td>
|
||||
<td>A new sequence, concept-identical to <tt class="literal"><span class="pre">s</span></tt>, of
|
||||
the following elements:
|
||||
[<tt class="literal"><span class="pre"><a href="./begin.html" class="identifier">begin</a><s>::type</span></tt>, <tt class="literal"><span class="pre">pos</span></tt>),
|
||||
[<tt class="literal"><span class="pre"><a href="./begin.html" class="identifier">begin</a><r>::type</span></tt>, <tt class="literal"><span class="pre"><a href="./end.html" class="identifier">end</a><r>::type</span></tt>),
|
||||
[<tt class="literal"><span class="pre">pos</span></tt>, <tt class="literal"><span class="pre"><a href="./end.html" class="identifier">end</a><s>::type</span></tt>); see <a class="refentry reference" href="./insert-range.html"><tt class="refentry literal"><span class="pre">insert_range</span></tt></a>.</td>
|
||||
[<tt class="literal"><span class="pre">pos</span></tt>, <tt class="literal"><span class="pre"><a href="./end.html" class="identifier">end</a><s>::type</span></tt>); see <a class="reference internal" href="./insert-range.html">insert_range</a>.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./erase.html" class="identifier">erase</a><s,pos>::type</span></tt></td>
|
||||
<td>A new sequence, concept-identical to <tt class="literal"><span class="pre">s</span></tt>, of
|
||||
the following elements:
|
||||
[<tt class="literal"><span class="pre"><a href="./begin.html" class="identifier">begin</a><s>::type</span></tt>, <tt class="literal"><span class="pre">pos</span></tt>),
|
||||
[<tt class="literal"><span class="pre"><a href="./next.html" class="identifier">next</a><pos>::type</span></tt>, <tt class="literal"><span class="pre"><a href="./end.html" class="identifier">end</a><s>::type</span></tt>); see <a class="refentry reference" href="./erase.html"><tt class="refentry literal"><span class="pre">erase</span></tt></a>.</td>
|
||||
[<tt class="literal"><span class="pre"><a href="./next.html" class="identifier">next</a><pos>::type</span></tt>, <tt class="literal"><span class="pre"><a href="./end.html" class="identifier">end</a><s>::type</span></tt>); see <a class="reference internal" href="./erase.html">erase</a>.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./erase.html" class="identifier">erase</a><s,pos,last>::type</span></tt></td>
|
||||
<td>A new sequence, concept-identical to <tt class="literal"><span class="pre">s</span></tt>, of
|
||||
the following elements:
|
||||
[<tt class="literal"><span class="pre"><a href="./begin.html" class="identifier">begin</a><s>::type</span></tt>, <tt class="literal"><span class="pre">pos</span></tt>),
|
||||
[<tt class="literal"><span class="pre">last</span></tt>, <tt class="literal"><span class="pre"><a href="./end.html" class="identifier">end</a><s>::type</span></tt>); see <a class="refentry reference" href="./erase.html"><tt class="refentry literal"><span class="pre">erase</span></tt></a>.</td>
|
||||
[<tt class="literal"><span class="pre">last</span></tt>, <tt class="literal"><span class="pre"><a href="./end.html" class="identifier">end</a><s>::type</span></tt>); see <a class="reference internal" href="./erase.html">erase</a>.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./clear.html" class="identifier">clear</a><s>::type</span></tt></td>
|
||||
<td>An empty sequence concept-identical to <tt class="literal"><span class="pre">s</span></tt>; see
|
||||
<a class="refentry reference" href="./clear.html"><tt class="refentry literal"><span class="pre">clear</span></tt></a>.</td>
|
||||
<a class="reference internal" href="./clear.html">clear</a>.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="extensible-models">
|
||||
<div class="section" id="id15">
|
||||
<h3><a class="subsection-title" href="#models" name="models">Models</a></h3>
|
||||
<ul class="simple">
|
||||
<li><a class="refentry reference" href="./vector.html"><tt class="refentry literal"><span class="pre">vector</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./list.html"><tt class="refentry literal"><span class="pre">list</span></tt></a></li>
|
||||
<li><a class="reference internal" href="./vector.html">vector</a></li>
|
||||
<li><a class="reference internal" href="./list.html">list</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="section" id="extensible-see-also">
|
||||
<div class="section" id="id16">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./sequences.html">Sequences</a>, <a class="reference" href="./back-extensible-sequence.html">Back Extensible Sequence</a>, <a class="refentry reference" href="./insert.html"><tt class="refentry literal"><span class="pre">insert</span></tt></a>, <a class="refentry reference" href="./insert-range.html"><tt class="refentry literal"><span class="pre">insert_range</span></tt></a>, <a class="refentry reference" href="./erase.html"><tt class="refentry literal"><span class="pre">erase</span></tt></a>, <a class="refentry reference" href="./clear.html"><tt class="refentry literal"><span class="pre">clear</span></tt></a></p>
|
||||
<!-- modtime: November 13, 2004 00:44:12 +0000 -->
|
||||
<p><a class="reference internal" href="./sequences.html">Sequences</a>, <a class="reference internal" href="./back-extensible-sequence.html">Back Extensible Sequence</a>, <a class="reference internal" href="./insert.html">insert</a>, <a class="reference internal" href="./insert-range.html">insert_range</a>, <a class="reference internal" href="./erase.html">erase</a>, <a class="reference internal" href="./clear.html">clear</a></p>
|
||||
<!-- Sequences/Concepts//Front Extensible Sequence |50 -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./random-access-sequence.html" class="navigation-link">Prev</a> <a href="./front-extensible-sequence.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./random-access-sequence.html" class="navigation-link">Back</a> <a href="./front-extensible-sequence.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./concepts.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: filter_view</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,8 +12,8 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./sequences.html" class="navigation-link">Sequences</a> / <a href="./views.html" class="navigation-link">Views</a> / <a href="./filter-view.html" class="navigation-link">filter_view</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="filter-view">
|
||||
<h1><a class="toc-backref" href="./views.html#id346" name="filter-view">filter_view</a></h1>
|
||||
<div class="section" id="filter-synopsis">
|
||||
<h1><a class="toc-backref" href="./views.html#id1418">filter_view</a></h1>
|
||||
<div class="section" id="id126">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
@@ -30,62 +27,62 @@ struct <a href="./filter-view.html" class="identifier">filter_view</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="filter-description">
|
||||
<div class="section" id="id127">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>A view into a subset of <tt class="literal"><span class="pre">Sequence</span></tt>'s elements satisfying the predicate <tt class="literal"><span class="pre">Pred</span></tt>.</p>
|
||||
</div>
|
||||
<div class="section" id="filter-header">
|
||||
<div class="section" id="id128">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/filter_view.hpp" class="header">boost/mpl/filter_view.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="filter-model-of">
|
||||
<div class="section" id="id129">
|
||||
<h3><a class="subsection-title" href="#model-of" name="model-of">Model of</a></h3>
|
||||
<ul class="simple">
|
||||
<li><a class="reference" href="./forward-sequence.html">Forward Sequence</a></li>
|
||||
<li><a class="reference internal" href="./forward-sequence.html">Forward Sequence</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="section" id="parameters">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<h3>Parameters</h3>
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="15%" />
|
||||
<col width="36%" />
|
||||
<col width="48%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">Sequence</span></tt></td>
|
||||
<td><a class="reference" href="./forward-sequence.html">Forward Sequence</a></td>
|
||||
<td><a class="reference internal" href="./forward-sequence.html">Forward Sequence</a></td>
|
||||
<td>A sequence to wrap.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre">Pred</span></tt></td>
|
||||
<td>Unary <a class="reference" href="./lambda-expression.html">Lambda Expression</a></td>
|
||||
<td>Unary <a class="reference internal" href="./lambda-expression.html">Lambda Expression</a></td>
|
||||
<td>A filtering predicate.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="filter-expression-semantics">
|
||||
<div class="section" id="id130">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>Semantics of an expression is defined only where it differs from, or is not
|
||||
defined in <a class="reference" href="./forward-sequence.html">Forward Sequence</a>.</p>
|
||||
<p>In the following table, <tt class="literal"><span class="pre">v</span></tt> is an instance of <tt class="literal"><span class="pre"><a href="./filter-view.html" class="identifier">filter_view</a></span></tt>, <tt class="literal"><span class="pre">s</span></tt> is an arbitrary
|
||||
<a class="reference" href="./forward-sequence.html">Forward Sequence</a>, <tt class="literal"><span class="pre">pred</span></tt> is an unary <a class="reference" href="./lambda-expression.html">Lambda Expression</a>.</p>
|
||||
<table border="1" class="table">
|
||||
<p>Semantics of an expression is defined only where it differs from, or is not
|
||||
defined in <a class="reference internal" href="./forward-sequence.html">Forward Sequence</a>.</p>
|
||||
<p>In the following table, <tt class="literal"><span class="pre">v</span></tt> is an instance of <tt class="literal"><span class="pre"><a href="./filter-view.html" class="identifier">filter_view</a></span></tt>, <tt class="literal"><span class="pre">s</span></tt> is an arbitrary
|
||||
<a class="reference internal" href="./forward-sequence.html">Forward Sequence</a>, <tt class="literal"><span class="pre">pred</span></tt> is an unary <a class="reference internal" href="./lambda-expression.html">Lambda Expression</a>.</p>
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="40%" />
|
||||
<col width="60%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Expression</th>
|
||||
<th>Semantics</th>
|
||||
<tr><th class="head">Expression</th>
|
||||
<th class="head">Semantics</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
@@ -94,19 +91,19 @@ defined in <a class="reference" href="./forward-sequence.html">Forward Sequence<
|
||||
<a href="./filter-view.html" class="identifier">filter_view</a><s,pred>::type
|
||||
</pre>
|
||||
</td>
|
||||
<td>A lazy <a class="reference" href="./forward-sequence.html">Forward Sequence</a> sequence of all the elements in
|
||||
<td>A lazy <a class="reference internal" href="./forward-sequence.html">Forward Sequence</a> sequence of all the elements in
|
||||
the range [<tt class="literal"><span class="pre"><a href="./begin.html" class="identifier">begin</a><s>::type</span></tt>, <tt class="literal"><span class="pre"><a href="./end.html" class="identifier">end</a><s>::type</span></tt>) that satisfy the predicate
|
||||
<tt class="literal"><span class="pre">pred</span></tt>.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./size.html" class="identifier">size</a><v>::type</span></tt></td>
|
||||
<td>The size of <tt class="literal"><span class="pre">v</span></tt>;
|
||||
<tt class="literal"><span class="pre"><a href="./size.html" class="identifier">size</a><v>::value</span> <span class="pre">==</span> <span class="pre"><a href="./count-if.html" class="identifier">count_if</a><s,pred>::value</span></tt>;
|
||||
linear complexity; see <a class="reference" href="./forward-sequence.html">Forward Sequence</a>.</td>
|
||||
linear complexity; see <a class="reference internal" href="./forward-sequence.html">Forward Sequence</a>.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="filter-example">
|
||||
<div class="section" id="id131">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<p>Find the largest floating type in a sequence.</p>
|
||||
<pre class="literal-block">
|
||||
@@ -118,15 +115,16 @@ typedef <a href="./max-element.html" class="identifier">max_element</a><
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( is_same< <a href="./deref.html" class="identifier">deref</a><iter::base>::type, long double > ));
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="filter-see-also">
|
||||
<div class="section" id="id132">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./sequences.html">Sequences</a>, <a class="reference" href="./views.html">Views</a>, <a class="refentry reference" href="./transform-view.html"><tt class="refentry literal"><span class="pre">transform_view</span></tt></a>, <a class="refentry reference" href="./joint-view.html"><tt class="refentry literal"><span class="pre">joint_view</span></tt></a>, <a class="refentry reference" href="./zip-view.html"><tt class="refentry literal"><span class="pre">zip_view</span></tt></a>, <a class="refentry reference" href="./iterator-range.html"><tt class="refentry literal"><span class="pre">iterator_range</span></tt></a></p>
|
||||
<!-- modtime: November 10, 2004 04:42:12 +0000 -->
|
||||
<p><a class="reference internal" href="./sequences.html">Sequences</a>, <a class="reference internal" href="./views.html">Views</a>, <a class="reference internal" href="./transform-view.html">transform_view</a>, <a class="reference internal" href="./joint-view.html">joint_view</a>, <a class="reference internal" href="./zip-view.html">zip_view</a>, <a class="reference internal" href="./iterator-range.html">iterator_range</a></p>
|
||||
<!-- Sequences/Views//iterator_range -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./empty-sequence.html" class="navigation-link">Prev</a> <a href="./iterator-range.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./empty-sequence.html" class="navigation-link">Back</a> <a href="./iterator-range.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./views.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+27
-28
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: find_if</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,8 +12,8 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./algorithms.html" class="navigation-link">Algorithms</a> / <a href="./querying-algorithms.html" class="navigation-link">Querying Algorithms</a> / <a href="./find-if.html" class="navigation-link">find_if</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="find-if">
|
||||
<h1><a class="toc-backref" href="./querying-algorithms.html#id404" name="find-if">find_if</a></h1>
|
||||
<div class="section" id="querying-find-synopsis">
|
||||
<h1><a class="toc-backref" href="./querying-algorithms.html#id1476">find_if</a></h1>
|
||||
<div class="section" id="id543">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
@@ -29,54 +26,55 @@ struct <a href="./find-if.html" class="identifier">find_if</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="querying-find-description">
|
||||
<div class="section" id="id544">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Returns an iterator to the first element in <tt class="literal"><span class="pre">Sequence</span></tt> that satisfies
|
||||
<p>Returns an iterator to the first element in <tt class="literal"><span class="pre">Sequence</span></tt> that satisfies
|
||||
the predicate <tt class="literal"><span class="pre">Pred</span></tt>.</p>
|
||||
</div>
|
||||
<div class="section" id="querying-find-header">
|
||||
<div class="section" id="id545">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/find_if.hpp" class="header">boost/mpl/find_if.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="querying-find-parameters">
|
||||
<div class="section" id="id546">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="19%" />
|
||||
<col width="38%" />
|
||||
<col width="43%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">Sequence</span></tt></td>
|
||||
<td><a class="reference" href="./forward-sequence.html">Forward Sequence</a></td>
|
||||
<td><a class="reference internal" href="./forward-sequence.html">Forward Sequence</a></td>
|
||||
<td>A sequence to search in.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre">Pred</span></tt></td>
|
||||
<td>Unary <a class="reference" href="./lambda-expression.html">Lambda Expression</a></td>
|
||||
<td>Unary <a class="reference internal" href="./lambda-expression.html">Lambda Expression</a></td>
|
||||
<td>A search condition.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="querying-find-expression-semantics">
|
||||
<div class="section" id="id547">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For any <a class="reference" href="./forward-sequence.html">Forward Sequence</a> <tt class="literal"><span class="pre">s</span></tt> and unary <a class="reference" href="./lambda-expression.html">Lambda Expression</a> <tt class="literal"><span class="pre">pred</span></tt>:</p>
|
||||
<p>For any <a class="reference internal" href="./forward-sequence.html">Forward Sequence</a> <tt class="literal"><span class="pre">s</span></tt> and unary <a class="reference internal" href="./lambda-expression.html">Lambda Expression</a> <tt class="literal"><span class="pre">pred</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./find-if.html" class="identifier">find_if</a><s,pred>::type i;
|
||||
typedef <a href="./find-if.html" class="identifier">find_if</a><s,pred>::type i;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference" href="./forward-iterator.html">Forward Iterator</a>.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><a class="reference internal" href="./forward-iterator.html">Forward Iterator</a>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first"><tt class="literal"><span class="pre">i</span></tt> is the first iterator in the range [<tt class="literal"><span class="pre"><a href="./begin.html" class="identifier">begin</a><s>::type</span></tt>, <tt class="literal"><span class="pre"><a href="./end.html" class="identifier">end</a><s>::type</span></tt>) such that</p>
|
||||
<pre class="literal-block">
|
||||
@@ -88,29 +86,30 @@ typedef <a href="./find-if.html" class="identifier">find_if</a><s,pred>::t
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="querying-find-complexity">
|
||||
<div class="section" id="id548">
|
||||
<h3><a class="subsection-title" href="#complexity" name="complexity">Complexity</a></h3>
|
||||
<p>Linear. At most <tt class="literal"><span class="pre"><a href="./size.html" class="identifier">size</a><s>::value</span></tt> applications of <tt class="literal"><span class="pre">pred</span></tt>.</p>
|
||||
</div>
|
||||
<div class="section" id="querying-find-example">
|
||||
<div class="section" id="id549">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./vector.html" class="identifier">vector</a><char,int,unsigned,long,unsigned long> types;
|
||||
typedef <a href="./find-if.html" class="identifier">find_if</a><types, is_same<_1,unsigned> >::type iter;
|
||||
typedef <a href="./find-if.html" class="identifier">find_if</a><types, is_same<<a href="./placeholders.html" class="identifier">_1</a>,unsigned> >::type iter;
|
||||
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( is_same< <a href="./deref.html" class="identifier">deref</a><iter>::type, unsigned > ));
|
||||
<a href="./assert-relation.html" class="identifier">BOOST_MPL_ASSERT_RELATION</a>( iter::pos::value, ==, 2 );
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="querying-find-see-also">
|
||||
<div class="section" id="id550">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./querying-algorithms.html">Querying Algorithms</a>, <a class="refentry reference" href="./find.html"><tt class="refentry literal"><span class="pre">find</span></tt></a>, <a class="refentry reference" href="./count-if.html"><tt class="refentry literal"><span class="pre">count_if</span></tt></a>, <a class="refentry reference" href="./lower-bound.html"><tt class="refentry literal"><span class="pre">lower_bound</span></tt></a></p>
|
||||
<!-- modtime: November 10, 2004 04:42:05 +0000 -->
|
||||
<p><a class="reference internal" href="./querying-algorithms.html">Querying Algorithms</a>, <a class="reference internal" href="./find.html">find</a>, <a class="reference internal" href="./count-if.html">count_if</a>, <a class="reference internal" href="./lower-bound.html">lower_bound</a></p>
|
||||
<!-- Algorithms/Querying Algorithms//contains |30 -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./find.html" class="navigation-link">Prev</a> <a href="./contains.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./find.html" class="navigation-link">Back</a> <a href="./contains.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./querying-algorithms.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+23
-24
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: find</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,8 +12,8 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./algorithms.html" class="navigation-link">Algorithms</a> / <a href="./querying-algorithms.html" class="navigation-link">Querying Algorithms</a> / <a href="./find.html" class="navigation-link">find</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="find">
|
||||
<h1><a class="toc-backref" href="./querying-algorithms.html#id403" name="find">find</a></h1>
|
||||
<div class="section" id="find-synopsis">
|
||||
<h1><a class="toc-backref" href="./querying-algorithms.html#id1475">find</a></h1>
|
||||
<div class="section" id="id535">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
@@ -29,33 +26,33 @@ struct <a href="./find.html" class="identifier">find</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="find-description">
|
||||
<div class="section" id="id536">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Returns an iterator to the first occurrence of type <tt class="literal"><span class="pre">T</span></tt> in a <tt class="literal"><span class="pre">Sequence</span></tt>.</p>
|
||||
</div>
|
||||
<div class="section" id="find-header">
|
||||
<div class="section" id="id537">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/find.hpp" class="header">boost/mpl/find.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="find-parameters">
|
||||
<div class="section" id="id538">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="21%" />
|
||||
<col width="32%" />
|
||||
<col width="48%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">Sequence</span></tt></td>
|
||||
<td><a class="reference" href="./forward-sequence.html">Forward Sequence</a></td>
|
||||
<td><a class="reference internal" href="./forward-sequence.html">Forward Sequence</a></td>
|
||||
<td>A sequence to search in.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre">T</span></tt></td>
|
||||
@@ -65,17 +62,18 @@ struct <a href="./find.html" class="identifier">find</a>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="find-expression-semantics">
|
||||
<div class="section" id="id539">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For any <a class="reference" href="./forward-sequence.html">Forward Sequence</a> <tt class="literal"><span class="pre">s</span></tt> and arbitrary type <tt class="literal"><span class="pre">t</span></tt>:</p>
|
||||
<p>For any <a class="reference internal" href="./forward-sequence.html">Forward Sequence</a> <tt class="literal"><span class="pre">s</span></tt> and arbitrary type <tt class="literal"><span class="pre">t</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./find.html" class="identifier">find</a><s,t>::type i;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference" href="./forward-iterator.html">Forward Iterator</a>.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><a class="reference internal" href="./forward-iterator.html">Forward Iterator</a>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Equivalent to</p>
|
||||
<pre class="last literal-block">
|
||||
@@ -86,11 +84,11 @@ typedef <a href="./find-if.html" class="identifier">find_if</a><s, is_same<
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="find-complexity">
|
||||
<div class="section" id="id540">
|
||||
<h3><a class="subsection-title" href="#complexity" name="complexity">Complexity</a></h3>
|
||||
<p>Linear. At most <tt class="literal"><span class="pre"><a href="./size.html" class="identifier">size</a><s>::value</span></tt> comparisons for identity.</p>
|
||||
</div>
|
||||
<div class="section" id="find-example">
|
||||
<div class="section" id="id541">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./vector.html" class="identifier">vector</a><char,int,unsigned,long,unsigned long> types;
|
||||
@@ -100,15 +98,16 @@ typedef <a href="./find.html" class="identifier">find</a><types,unsigned>:
|
||||
<a href="./assert-relation.html" class="identifier">BOOST_MPL_ASSERT_RELATION</a>( iter::pos::value, ==, 2 );
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="find-see-also">
|
||||
<div class="section" id="id542">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./querying-algorithms.html">Querying Algorithms</a>, <a class="refentry reference" href="./contains.html"><tt class="refentry literal"><span class="pre">contains</span></tt></a>, <a class="refentry reference" href="./find-if.html"><tt class="refentry literal"><span class="pre">find_if</span></tt></a>, <a class="refentry reference" href="./count.html"><tt class="refentry literal"><span class="pre">count</span></tt></a>, <a class="refentry reference" href="./lower-bound.html"><tt class="refentry literal"><span class="pre">lower_bound</span></tt></a></p>
|
||||
<!-- modtime: November 13, 2004 01:50:50 +0000 -->
|
||||
<p><a class="reference internal" href="./querying-algorithms.html">Querying Algorithms</a>, <a class="reference internal" href="./contains.html">contains</a>, <a class="reference internal" href="./find-if.html">find_if</a>, <a class="reference internal" href="./count.html">count</a>, <a class="reference internal" href="./lower-bound.html">lower_bound</a></p>
|
||||
<!-- Algorithms/Querying Algorithms//find_if |20 -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./querying-algorithms.html" class="navigation-link">Prev</a> <a href="./find-if.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group">Back <a href="./find-if.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./querying-algorithms.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+33
-30
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: fold</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,8 +12,8 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./algorithms.html" class="navigation-link">Algorithms</a> / <a href="./iteration-algorithms.html" class="navigation-link">Iteration Algorithms</a> / <a href="./fold.html" class="navigation-link">fold</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="fold">
|
||||
<h1><a class="toc-backref" href="./iteration-algorithms.html#id397" name="fold">fold</a></h1>
|
||||
<div class="section" id="fold-synopsis">
|
||||
<h1><a class="toc-backref" href="./iteration-algorithms.html#id1469">fold</a></h1>
|
||||
<div class="section" id="id493">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
@@ -30,35 +27,35 @@ struct <a href="./fold.html" class="identifier">fold</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="fold-description">
|
||||
<div class="section" id="id494">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Returns the result of the successive application of binary <tt class="literal"><span class="pre">ForwardOp</span></tt> to the
|
||||
result of the previous <tt class="literal"><span class="pre">ForwardOp</span></tt> invocation (<tt class="literal"><span class="pre">State</span></tt> if it's the first call)
|
||||
<p>Returns the result of the successive application of binary <tt class="literal"><span class="pre">ForwardOp</span></tt> to the
|
||||
result of the previous <tt class="literal"><span class="pre">ForwardOp</span></tt> invocation (<tt class="literal"><span class="pre">State</span></tt> if it's the first call)
|
||||
and every element of the sequence in the range [<tt class="literal"><span class="pre"><a href="./begin.html" class="identifier">begin</a><Sequence>::type</span></tt>, <tt class="literal"><span class="pre"><a href="./end.html" class="identifier">end</a><Sequence>::type</span></tt>) in order.</p>
|
||||
</div>
|
||||
<div class="section" id="fold-header">
|
||||
<div class="section" id="id495">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/fold.hpp" class="header">boost/mpl/fold.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="fold-parameters">
|
||||
<div class="section" id="id496">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="15%" />
|
||||
<col width="32%" />
|
||||
<col width="53%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">Sequence</span></tt></td>
|
||||
<td><a class="reference" href="./forward-sequence.html">Forward Sequence</a></td>
|
||||
<td><a class="reference internal" href="./forward-sequence.html">Forward Sequence</a></td>
|
||||
<td>A sequence to iterate.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre">State</span></tt></td>
|
||||
@@ -67,60 +64,66 @@ and every element of the sequence in the range [<tt class="literal"><span class=
|
||||
application.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre">ForwardOp</span></tt></td>
|
||||
<td>Binary <a class="reference" href="./lambda-expression.html">Lambda Expression</a></td>
|
||||
<td>Binary <a class="reference internal" href="./lambda-expression.html">Lambda Expression</a></td>
|
||||
<td>The operation to be executed on forward
|
||||
traversal.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="fold-expression-semantics">
|
||||
<div class="section" id="id497">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For any <a class="reference" href="./forward-sequence.html">Forward Sequence</a> <tt class="literal"><span class="pre">s</span></tt>, binary <a class="reference" href="./lambda-expression.html">Lambda Expression</a> <tt class="literal"><span class="pre">op</span></tt>, and arbitrary type <tt class="literal"><span class="pre">state</span></tt>:</p>
|
||||
<p>For any <a class="reference internal" href="./forward-sequence.html">Forward Sequence</a> <tt class="literal"><span class="pre">s</span></tt>, binary <a class="reference internal" href="./lambda-expression.html">Lambda Expression</a> <tt class="literal"><span class="pre">op</span></tt>, and arbitrary type <tt class="literal"><span class="pre">state</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./fold.html" class="identifier">fold</a><s,state,op>::type t;
|
||||
typedef <a href="./fold.html" class="identifier">fold</a><s,state,op>::type t;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body">A type.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first">A type.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Equivalent to</p>
|
||||
<pre class="last literal-block">
|
||||
typedef <a href="./iter-fold.html" class="identifier">iter_fold</a>< s,state,<a href="./apply.html" class="identifier">apply</a><op,_1,<a href="./deref.html" class="identifier">deref</a><_2> > >::type t;
|
||||
typedef <a href="./iter-fold.html" class="identifier">iter_fold</a><
|
||||
s
|
||||
, state
|
||||
, apply_wrap2< <a href="./lambda.html" class="identifier">lambda</a><op>::type, <a href="./placeholders.html" class="identifier">_1</a>, <a href="./deref.html" class="identifier">deref</a><<a href="./placeholders.html" class="identifier">_2</a>> >
|
||||
>::type t;
|
||||
</pre>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="fold-complexity">
|
||||
<div class="section" id="id498">
|
||||
<h3><a class="subsection-title" href="#complexity" name="complexity">Complexity</a></h3>
|
||||
<p>Linear. Exactly <tt class="literal"><span class="pre"><a href="./size.html" class="identifier">size</a><s>::value</span></tt> applications of <tt class="literal"><span class="pre">op</span></tt>.</p>
|
||||
</div>
|
||||
<div class="section" id="fold-example">
|
||||
<div class="section" id="id499">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./vector.html" class="identifier">vector</a><long,float,short,double,float,long,long double> types;
|
||||
typedef <a href="./fold.html" class="identifier">fold</a><
|
||||
types
|
||||
, <a href="./int.html" class="identifier">int_</a><0>
|
||||
, <a href="./if.html" class="identifier">if_</a>< is_float<_2>,<a href="./next.html" class="identifier">next</a><_1>,_1 >
|
||||
, <a href="./if.html" class="identifier">if_</a>< is_float<<a href="./placeholders.html" class="identifier">_2</a>>,<a href="./next.html" class="identifier">next</a><<a href="./placeholders.html" class="identifier">_1</a>>,<a href="./placeholders.html" class="identifier">_1</a> >
|
||||
>::type number_of_floats;
|
||||
|
||||
<a href="./assert-relation.html" class="identifier">BOOST_MPL_ASSERT_RELATION</a>( number_of_floats::value, ==, 4 );
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="fold-see-also">
|
||||
<div class="section" id="id500">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./algorithms.html">Algorithms</a>, <a class="refentry reference" href="./accumulate.html"><tt class="refentry literal"><span class="pre">accumulate</span></tt></a>, <a class="refentry reference" href="./reverse-fold.html"><tt class="refentry literal"><span class="pre">reverse_fold</span></tt></a>, <a class="refentry reference" href="./iter-fold.html"><tt class="refentry literal"><span class="pre">iter_fold</span></tt></a>, <a class="refentry reference" href="./reverse-iter-fold.html"><tt class="refentry literal"><span class="pre">reverse_iter_fold</span></tt></a>, <a class="refentry reference" href="./copy.html"><tt class="refentry literal"><span class="pre">copy</span></tt></a>, <a class="refentry reference" href="./copy-if.html"><tt class="refentry literal"><span class="pre">copy_if</span></tt></a></p>
|
||||
<!-- modtime: November 10, 2004 04:46:33 +0000 -->
|
||||
<p><a class="reference internal" href="./algorithms.html">Algorithms</a>, <a class="reference internal" href="./accumulate.html">accumulate</a>, <a class="reference internal" href="./reverse-fold.html">reverse_fold</a>, <a class="reference internal" href="./iter-fold.html">iter_fold</a>, <a class="reference internal" href="./reverse-iter-fold.html">reverse_iter_fold</a>, <a class="reference internal" href="./copy.html">copy</a>, <a class="reference internal" href="./copy-if.html">copy_if</a></p>
|
||||
<!-- Algorithms/Iteration Algorithms//iter_fold -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./iteration-algorithms.html" class="navigation-link">Prev</a> <a href="./iter-fold.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group">Back <a href="./iter-fold.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./iteration-algorithms.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+35
-35
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: for_each</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,8 +12,8 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./algorithms.html" class="navigation-link">Algorithms</a> / <a href="./runtime-algorithms.html" class="navigation-link">Runtime Algorithms</a> / <a href="./for-each.html" class="navigation-link">for_each</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="for-each">
|
||||
<h1><a class="toc-backref" href="./runtime-algorithms.html#id437" name="for-each">for_each</a></h1>
|
||||
<div class="section" id="for-synopsis">
|
||||
<h1><a class="toc-backref" href="./runtime-algorithms.html#id1509">for_each</a></h1>
|
||||
<div class="section" id="id812">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
@@ -33,7 +30,7 @@ template<
|
||||
void <a href="./for-each.html" class="identifier">for_each</a>( F f );
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="for-description">
|
||||
<div class="section" id="id813">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p><tt class="literal"><span class="pre"><a href="./for-each.html" class="identifier">for_each</a></span></tt> is a family of overloaded function templates:</p>
|
||||
<ul class="simple">
|
||||
@@ -44,68 +41,69 @@ object <tt class="literal"><span class="pre">f</span></tt> to the result of the
|
||||
every element in the [<tt class="literal"><span class="pre"><a href="./begin.html" class="identifier">begin</a><Sequence>::type</span></tt>, <tt class="literal"><span class="pre"><a href="./end.html" class="identifier">end</a><Sequence>::type</span></tt>) range.</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="section" id="for-header">
|
||||
<div class="section" id="id814">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/for_each.hpp" class="header">boost/mpl/for_each.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="for-parameters">
|
||||
<div class="section" id="id815">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="21%" />
|
||||
<col width="39%" />
|
||||
<col width="39%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">Sequence</span></tt></td>
|
||||
<td><a class="reference" href="./forward-sequence.html">Forward Sequence</a></td>
|
||||
<td><a class="reference internal" href="./forward-sequence.html">Forward Sequence</a></td>
|
||||
<td>A sequence to iterate.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre">TransformOp</span></tt></td>
|
||||
<td><a class="reference" href="./lambda-expression.html">Lambda Expression</a></td>
|
||||
<td><a class="reference internal" href="./lambda-expression.html">Lambda Expression</a></td>
|
||||
<td>A transformation.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre">f</span></tt></td>
|
||||
<td>An <a class="reference" href="http://www.sgi.com/tech/stl/UnaryFunction.html" target="_top">unary function object</a></td>
|
||||
<td>An <a class="reference external" href="http://www.sgi.com/tech/stl/UnaryFunction.html" target="_top">unary function object</a></td>
|
||||
<td>A runtime operation to apply.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="for-expression-semantics">
|
||||
<div class="section" id="id816">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For any <a class="reference" href="./forward-sequence.html">Forward Sequence</a> <tt class="literal"><span class="pre">s</span></tt>, <a class="reference" href="./lambda-expression.html">Lambda Expression</a> <tt class="literal"><span class="pre">op</span></tt> , and an
|
||||
<a class="reference" href="http://www.sgi.com/tech/stl/UnaryFunction.html" target="_top">unary function object</a> <tt class="literal"><span class="pre">f</span></tt>:</p>
|
||||
<p>For any <a class="reference internal" href="./forward-sequence.html">Forward Sequence</a> <tt class="literal"><span class="pre">s</span></tt>, <a class="reference internal" href="./lambda-expression.html">Lambda Expression</a> <tt class="literal"><span class="pre">op</span></tt> , and an
|
||||
<a class="reference external" href="http://www.sgi.com/tech/stl/UnaryFunction.html" target="_top">unary function object</a> <tt class="literal"><span class="pre">f</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
<a href="./for-each.html" class="identifier">for_each</a><s>( f );
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><tt class="literal"><span class="pre">void</span></tt></td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><tt class="literal"><span class="pre">void</span></tt></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Postcondition:</th><td class="field-body"><p class="first">Equivalent to</p>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./begin.html" class="identifier">begin</a><Sequence>::type i<sub>1</sub>;
|
||||
<a class="reference" href="http://www.boost.org/libs/utility/value_init.htm" target="_top"><a href="./value-initialized.html" class="identifier">value_initialized</a></a>< <a href="./deref.html" class="identifier">deref</a><i<sub>1</sub>>::type > x<sub>1</sub>;
|
||||
<a class="reference external" href="http://www.boost.org/libs/utility/value_init.htm" target="_top">value_initialized</a>< <a href="./deref.html" class="identifier">deref</a><i<sub>1</sub>>::type > x<sub>1</sub>;
|
||||
f(boost::get(x<sub>1</sub>));
|
||||
|
||||
typedef <a href="./next.html" class="identifier">next</a><i<sub>1</sub>>::type i<sub>2</sub>;
|
||||
<a class="reference" href="http://www.boost.org/libs/utility/value_init.htm" target="_top"><a href="./value-initialized.html" class="identifier">value_initialized</a></a>< <a href="./deref.html" class="identifier">deref</a><i<sub>2</sub>>::type > x<sub>2</sub>;
|
||||
<a class="reference external" href="http://www.boost.org/libs/utility/value_init.htm" target="_top">value_initialized</a>< <a href="./deref.html" class="identifier">deref</a><i<sub>2</sub>>::type > x<sub>2</sub>;
|
||||
f(boost::get(x<sub>2</sub>));
|
||||
<em>...</em>
|
||||
<a class="reference" href="http://www.boost.org/libs/utility/value_init.htm" target="_top"><a href="./value-initialized.html" class="identifier">value_initialized</a></a>< <a href="./deref.html" class="identifier">deref</a><i<sub>n</sub>>::type > x<sub>n</sub>;
|
||||
<a class="reference external" href="http://www.boost.org/libs/utility/value_init.htm" target="_top">value_initialized</a>< <a href="./deref.html" class="identifier">deref</a><i<sub>n</sub>>::type > x<sub>n</sub>;
|
||||
f(boost::get(x<sub>n</sub>));
|
||||
typedef <a href="./next.html" class="identifier">next</a><i<sub>n</sub>>::type last;
|
||||
typedef <a href="./next.html" class="identifier">next</a><i<sub>n</sub>>::type last;
|
||||
</pre>
|
||||
<p class="last">where <tt class="literal"><span class="pre">n</span> <span class="pre">==</span> <span class="pre"><a href="./size.html" class="identifier">size</a><s>::value</span></tt> and <tt class="literal"><span class="pre">last</span></tt> is identical to
|
||||
<tt class="literal"><span class="pre"><a href="./end.html" class="identifier">end</a><s>::type</span></tt>; no effect if <tt class="literal"><span class="pre"><a href="./empty.html" class="identifier">empty</a><s>::value</span> <span class="pre">==</span> <span class="pre">true</span></tt>.</p>
|
||||
@@ -116,33 +114,34 @@ typedef <a href="./next.html" class="identifier">next</a><i<sub>n</sub>>::
|
||||
<pre class="literal-block">
|
||||
<a href="./for-each.html" class="identifier">for_each</a><s,op>( f );
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><tt class="literal"><span class="pre">void</span></tt></td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><tt class="literal"><span class="pre">void</span></tt></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Postcondition:</th><td class="field-body"><p class="first">Equivalent to</p>
|
||||
<pre class="last literal-block">
|
||||
<a href="./for-each.html" class="identifier">for_each</a>< tranform_view<s,op> >( f );
|
||||
<a href="./for-each.html" class="identifier">for_each</a>< <a href="./transform-view.html" class="identifier">transform_view</a><s,op> >( f );
|
||||
</pre>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="for-complexity">
|
||||
<div class="section" id="id817">
|
||||
<h3><a class="subsection-title" href="#complexity" name="complexity">Complexity</a></h3>
|
||||
<p>Linear. Exactly <tt class="literal"><span class="pre"><a href="./size.html" class="identifier">size</a><s>::value</span></tt> applications of <tt class="literal"><span class="pre">op</span></tt> and <tt class="literal"><span class="pre">f</span></tt>.</p>
|
||||
</div>
|
||||
<div class="section" id="for-example">
|
||||
<div class="section" id="id818">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
struct value_printer
|
||||
{
|
||||
template< typename U > void operator()(U x)
|
||||
{
|
||||
std::cout << x << 'n';
|
||||
std::cout << x << '\n';
|
||||
}
|
||||
};
|
||||
|
||||
@@ -152,14 +151,15 @@ int main()
|
||||
}
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="for-see-also">
|
||||
<div class="section" id="id819">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./runtime-algorithms.html">Runtime Algorithms</a>, <a class="reference" href="./views.html">Views</a>, <a class="refentry reference" href="./transform-view.html"><tt class="refentry literal"><span class="pre">transform_view</span></tt></a></p>
|
||||
<!-- modtime: March 29, 2007 07:29:32 +0000 -->
|
||||
<p><a class="reference internal" href="./runtime-algorithms.html">Runtime Algorithms</a>, <a class="reference internal" href="./views.html">Views</a>, <a class="reference internal" href="./transform-view.html">transform_view</a></p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./runtime-algorithms.html" class="navigation-link">Prev</a> <a href="./metafunctions.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group">Back Along</span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./runtime-algorithms.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: Forward Iterator</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,48 +12,48 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./iterators.html" class="navigation-link">Iterators</a> / <a href="./iterators-concepts.html" class="navigation-link">Concepts</a> / <a href="./forward-iterator.html" class="navigation-link">Forward Iterator</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="forward-iterator">
|
||||
<h1><a class="toc-backref" href="./iterators-concepts.html#id378" name="forward-iterator">Forward Iterator</a></h1>
|
||||
<div class="section" id="forward-description">
|
||||
<h1><a class="toc-backref" href="./iterators-concepts.html#id1450">Forward Iterator</a></h1>
|
||||
<div class="section" id="id384">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>A <a class="reference" href="./forward-iterator.html">Forward Iterator</a> <tt class="literal"><span class="pre">i</span></tt> is a type that represents a positional reference
|
||||
to an element of a <a class="reference" href="./forward-sequence.html">Forward Sequence</a>. It allows to access the element through
|
||||
a dereference operation, and provides a way to obtain an iterator to
|
||||
<p>A <a class="reference internal" href="./forward-iterator.html">Forward Iterator</a> <tt class="literal"><span class="pre">i</span></tt> is a type that represents a positional reference
|
||||
to an element of a <a class="reference internal" href="./forward-sequence.html">Forward Sequence</a>. It allows to access the element through
|
||||
a dereference operation, and provides a way to obtain an iterator to
|
||||
the next element in a sequence.</p>
|
||||
<!-- A [Forward Iterator] guarantees a linear traversal over
|
||||
<!-- A [Forward Iterator] guarantees a linear traversal over
|
||||
the sequence. -->
|
||||
</div>
|
||||
<div class="section" id="forward-definitions">
|
||||
<div class="section" id="id385">
|
||||
<h3><a class="subsection-title" href="#definitions" name="definitions">Definitions</a></h3>
|
||||
<ul class="simple">
|
||||
<li>An iterator can be <cite>dereferenceable</cite>, meaning that <tt class="literal"><span class="pre"><a href="./deref.html" class="identifier">deref</a><i>::type</span></tt>
|
||||
is a well-defined expression.</li>
|
||||
<li>An iterator is <cite>past-the-end</cite> if it points beyond the last element of a
|
||||
<li>An iterator is <cite>past-the-end</cite> if it points beyond the last element of a
|
||||
sequence; past-the-end iterators are non-dereferenceable.</li>
|
||||
<li>An iterator <tt class="literal"><span class="pre">i</span></tt> is <cite>incrementable</cite> if there is a "next" iterator, that
|
||||
is, if <tt class="literal"><span class="pre"><a href="./next.html" class="identifier">next</a><i>::type</span></tt> expression is well-defined; past-the-end iterators are
|
||||
<li>An iterator <tt class="literal"><span class="pre">i</span></tt> is <cite>incrementable</cite> if there is a "next" iterator, that
|
||||
is, if <tt class="literal"><span class="pre"><a href="./next.html" class="identifier">next</a><i>::type</span></tt> expression is well-defined; past-the-end iterators are
|
||||
not incrementable.</li>
|
||||
<li>Two iterators into the same sequence are <cite>equivalent</cite> if they have the same
|
||||
type.</li>
|
||||
<li>An iterator <tt class="literal"><span class="pre">j</span></tt> is <cite>reachable</cite> from an iterator <tt class="literal"><span class="pre">i</span></tt> if , after recursive
|
||||
application of <tt class="literal"><span class="pre"><a href="./next.html" class="identifier">next</a></span></tt> metafunction to <tt class="literal"><span class="pre">i</span></tt> a finite number of times, <tt class="literal"><span class="pre">i</span></tt>
|
||||
<li>An iterator <tt class="literal"><span class="pre">j</span></tt> is <cite>reachable</cite> from an iterator <tt class="literal"><span class="pre">i</span></tt> if , after recursive
|
||||
application of <tt class="literal"><span class="pre"><a href="./next.html" class="identifier">next</a></span></tt> metafunction to <tt class="literal"><span class="pre">i</span></tt> a finite number of times, <tt class="literal"><span class="pre">i</span></tt>
|
||||
is equivalent to <tt class="literal"><span class="pre">j</span></tt>.</li>
|
||||
<li>The notation [<tt class="literal"><span class="pre">i</span></tt>,<tt class="literal"><span class="pre">j</span></tt>) refers to a <cite>range</cite> of iterators beginning with
|
||||
<li>The notation [<tt class="literal"><span class="pre">i</span></tt>,<tt class="literal"><span class="pre">j</span></tt>) refers to a <cite>range</cite> of iterators beginning with
|
||||
<tt class="literal"><span class="pre">i</span></tt> and up to but not including <tt class="literal"><span class="pre">j</span></tt>.</li>
|
||||
<li>The range [<tt class="literal"><span class="pre">i</span></tt>,<tt class="literal"><span class="pre">j</span></tt>) is a <cite>valid range</cite> if <tt class="literal"><span class="pre">j</span></tt> is reachable from <tt class="literal"><span class="pre">i</span></tt>.</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="section" id="forward-expression-requirements">
|
||||
<div class="section" id="id386">
|
||||
<h3><a class="subsection-title" href="#expression-requirements" name="expression-requirements">Expression requirements</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="25%" />
|
||||
<col width="46%" />
|
||||
<col width="29%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Expression</th>
|
||||
<th>Type</th>
|
||||
<th>Complexity</th>
|
||||
<tr><th class="head">Expression</th>
|
||||
<th class="head">Type</th>
|
||||
<th class="head">Complexity</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
@@ -65,23 +62,23 @@ is equivalent to <tt class="literal"><span class="pre">j</span></tt>.</li>
|
||||
<td>Amortized constant time</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./next.html" class="identifier">next</a><i>::type</span></tt></td>
|
||||
<td><a class="reference" href="./forward-iterator.html">Forward Iterator</a></td>
|
||||
<td><a class="reference internal" href="./forward-iterator.html">Forward Iterator</a></td>
|
||||
<td>Amortized constant time</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre">i::category</span></tt></td>
|
||||
<td><a class="reference" href="./integral-constant.html">Integral Constant</a>, convertible
|
||||
<td><a class="reference internal" href="./integral-constant.html">Integral Constant</a>, convertible
|
||||
to <tt class="literal"><span class="pre">forward_iterator_tag</span></tt></td>
|
||||
<td>Constant time</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="forward-expression-semantics">
|
||||
<div class="section" id="id387">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./deref.html" class="identifier">deref</a><i>::type j;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
@@ -95,7 +92,7 @@ typedef <a href="./deref.html" class="identifier">deref</a><i>::type j;
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./next.html" class="identifier">next</a><i>::type j;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
@@ -111,7 +108,7 @@ typedef <a href="./next.html" class="identifier">next</a><i>::type j;
|
||||
<pre class="literal-block">
|
||||
typedef i::category c;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
@@ -120,31 +117,32 @@ typedef i::category c;
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="forward-invariants">
|
||||
<div class="section" id="id388">
|
||||
<h3><a class="subsection-title" href="#invariants" name="invariants">Invariants</a></h3>
|
||||
<p>For any forward iterators <tt class="literal"><span class="pre">i</span></tt> and <tt class="literal"><span class="pre">j</span></tt> the following invariants always hold:</p>
|
||||
<ul class="simple">
|
||||
<li><tt class="literal"><span class="pre">i</span></tt> and <tt class="literal"><span class="pre">j</span></tt> are equivalent if and only if they are pointing to the same
|
||||
<li><tt class="literal"><span class="pre">i</span></tt> and <tt class="literal"><span class="pre">j</span></tt> are equivalent if and only if they are pointing to the same
|
||||
element.</li>
|
||||
<li>If <tt class="literal"><span class="pre">i</span></tt> is dereferenceable, and <tt class="literal"><span class="pre">j</span></tt> is equivalent to <tt class="literal"><span class="pre">i</span></tt>, then <tt class="literal"><span class="pre">j</span></tt> is
|
||||
<li>If <tt class="literal"><span class="pre">i</span></tt> is dereferenceable, and <tt class="literal"><span class="pre">j</span></tt> is equivalent to <tt class="literal"><span class="pre">i</span></tt>, then <tt class="literal"><span class="pre">j</span></tt> is
|
||||
dereferenceable as well.</li>
|
||||
<li>If <tt class="literal"><span class="pre">i</span></tt> and <tt class="literal"><span class="pre">j</span></tt> are equivalent and dereferenceable, then <tt class="literal"><span class="pre"><a href="./deref.html" class="identifier">deref</a><i>::type</span></tt>
|
||||
<li>If <tt class="literal"><span class="pre">i</span></tt> and <tt class="literal"><span class="pre">j</span></tt> are equivalent and dereferenceable, then <tt class="literal"><span class="pre"><a href="./deref.html" class="identifier">deref</a><i>::type</span></tt>
|
||||
and <tt class="literal"><span class="pre"><a href="./deref.html" class="identifier">deref</a><j>::type</span></tt> are identical.</li>
|
||||
<li>If <tt class="literal"><span class="pre">i</span></tt> is incrementable, and <tt class="literal"><span class="pre">j</span></tt> is equivalent to <tt class="literal"><span class="pre">i</span></tt>, then <tt class="literal"><span class="pre">j</span></tt> is
|
||||
<li>If <tt class="literal"><span class="pre">i</span></tt> is incrementable, and <tt class="literal"><span class="pre">j</span></tt> is equivalent to <tt class="literal"><span class="pre">i</span></tt>, then <tt class="literal"><span class="pre">j</span></tt> is
|
||||
incrementable as well.</li>
|
||||
<li>If <tt class="literal"><span class="pre">i</span></tt> and <tt class="literal"><span class="pre">j</span></tt> are equivalent and incrementable, then <tt class="literal"><span class="pre"><a href="./next.html" class="identifier">next</a><i>::type</span></tt>
|
||||
<li>If <tt class="literal"><span class="pre">i</span></tt> and <tt class="literal"><span class="pre">j</span></tt> are equivalent and incrementable, then <tt class="literal"><span class="pre"><a href="./next.html" class="identifier">next</a><i>::type</span></tt>
|
||||
and <tt class="literal"><span class="pre"><a href="./next.html" class="identifier">next</a><j>::type</span></tt> are equivalent.</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="section" id="forward-see-also">
|
||||
<div class="section" id="id389">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./iterators.html">Iterators</a>, <a class="reference" href="./bidirectional-iterator.html">Bidirectional Iterator</a>, <a class="reference" href="./forward-sequence.html">Forward Sequence</a>, <a class="refentry reference" href="./deref.html"><tt class="refentry literal"><span class="pre">deref</span></tt></a>, <a class="refentry reference" href="./next.html"><tt class="refentry literal"><span class="pre">next</span></tt></a></p>
|
||||
<!-- modtime: November 13, 2004 01:34:24 +0000 -->
|
||||
<p><a class="reference internal" href="./iterators.html">Iterators</a>, <a class="reference internal" href="./bidirectional-iterator.html">Bidirectional Iterator</a>, <a class="reference internal" href="./forward-sequence.html">Forward Sequence</a>, <a class="reference internal" href="./deref.html">deref</a>, <a class="reference internal" href="./next.html">next</a></p>
|
||||
<!-- Iterators/Concepts//Bidirectional Iterator |20 -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./iterators-concepts.html" class="navigation-link">Prev</a> <a href="./bidirectional-iterator.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group">Back <a href="./bidirectional-iterator.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./iterators-concepts.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: Forward Sequence</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,54 +12,54 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./sequences.html" class="navigation-link">Sequences</a> / <a href="./concepts.html" class="navigation-link">Concepts</a> / <a href="./forward-sequence.html" class="navigation-link">Forward Sequence</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="forward-sequence">
|
||||
<h1><a class="toc-backref" href="./concepts.html#id324" name="forward-sequence">Forward Sequence</a></h1>
|
||||
<h1><a class="toc-backref" href="./concepts.html#id1395">Forward Sequence</a></h1>
|
||||
<div class="section" id="description">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>A <a class="reference" href="./forward-sequence.html">Forward Sequence</a> is an MPL concept representing a compile-time sequence of
|
||||
elements. Sequence elements are
|
||||
types, and are accessible through <a class="reference" href="./iterators.html">Iterators</a>. The <a class="refentry reference" href="./begin.html"><tt class="refentry literal"><span class="pre">begin</span></tt></a> and <a class="refentry reference" href="./end.html"><tt class="refentry literal"><span class="pre">end</span></tt></a> metafunctions
|
||||
provide iterators delimiting the range of the sequence
|
||||
elements. A sequence guarantees that its elements are arranged in a definite,
|
||||
but possibly unspecified, order. Every MPL sequence is a <a class="reference" href="./forward-sequence.html">Forward Sequence</a>.</p>
|
||||
<h3>Description</h3>
|
||||
<p>A <a class="reference internal" href="./forward-sequence.html">Forward Sequence</a> is an MPL concept representing a compile-time sequence of
|
||||
elements. Sequence elements are
|
||||
types, and are accessible through <a class="reference internal" href="./iterators.html">Iterators</a>. The <a class="reference internal" href="./begin.html">begin</a> and <a class="reference internal" href="./end.html">end</a> metafunctions
|
||||
provide iterators delimiting the range of the sequence
|
||||
elements. A sequence guarantees that its elements are arranged in a definite,
|
||||
but possibly unspecified, order. Every MPL sequence is a <a class="reference internal" href="./forward-sequence.html">Forward Sequence</a>.</p>
|
||||
</div>
|
||||
<div class="section" id="definitions">
|
||||
<h3><a class="subsection-title" href="#definitions" name="definitions">Definitions</a></h3>
|
||||
<h3>Definitions</h3>
|
||||
<ul class="simple">
|
||||
<li>The <em>size</em> of a sequence is the number of elements it contains. The size is a
|
||||
<li>The <em>size</em> of a sequence is the number of elements it contains. The size is a
|
||||
nonnegative number.</li>
|
||||
<li>A sequence is <em>empty</em> if its size is zero.</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="section" id="expression-requirements">
|
||||
<h3><a class="subsection-title" href="#expression-requirements" name="expression-requirements">Expression requirements</a></h3>
|
||||
<p>For any <a class="reference" href="./forward-sequence.html">Forward Sequence</a> <tt class="literal"><span class="pre">s</span></tt> the following expressions must be valid:</p>
|
||||
<table border="1" class="table">
|
||||
<h3>Expression requirements</h3>
|
||||
<p>For any <a class="reference internal" href="./forward-sequence.html">Forward Sequence</a> <tt class="literal"><span class="pre">s</span></tt> the following expressions must be valid:</p>
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="30%" />
|
||||
<col width="39%" />
|
||||
<col width="30%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Expression</th>
|
||||
<th>Type</th>
|
||||
<th>Complexity</th>
|
||||
<tr><th class="head">Expression</th>
|
||||
<th class="head">Type</th>
|
||||
<th class="head">Complexity</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./begin.html" class="identifier">begin</a><s>::type</span></tt></td>
|
||||
<td><a class="reference" href="./forward-iterator.html">Forward Iterator</a></td>
|
||||
<td><a class="reference internal" href="./forward-iterator.html">Forward Iterator</a></td>
|
||||
<td>Amortized constant time</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./end.html" class="identifier">end</a><s>::type</span></tt></td>
|
||||
<td><a class="reference" href="./forward-iterator.html">Forward Iterator</a></td>
|
||||
<td><a class="reference internal" href="./forward-iterator.html">Forward Iterator</a></td>
|
||||
<td>Amortized constant time</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./size.html" class="identifier">size</a><s>::type</span></tt></td>
|
||||
<td><a class="reference" href="./integral-constant.html">Integral Constant</a></td>
|
||||
<td><a class="reference internal" href="./integral-constant.html">Integral Constant</a></td>
|
||||
<td>Unspecified</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./empty.html" class="identifier">empty</a><s>::type</span></tt></td>
|
||||
<td>Boolean <a class="reference" href="./integral-constant.html">Integral Constant</a></td>
|
||||
<td>Boolean <a class="reference internal" href="./integral-constant.html">Integral Constant</a></td>
|
||||
<td>Constant time</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./front.html" class="identifier">front</a><s>::type</span></tt></td>
|
||||
@@ -73,67 +70,68 @@ nonnegative number.</li>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="expression-semantics">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<table border="1" class="table">
|
||||
<h3>Expression semantics</h3>
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="28%" />
|
||||
<col width="72%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Expression</th>
|
||||
<th>Semantics</th>
|
||||
<tr><th class="head">Expression</th>
|
||||
<th class="head">Semantics</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./begin.html" class="identifier">begin</a><s>::type</span></tt></td>
|
||||
<td>An iterator to the first element of the sequence; see <a class="refentry reference" href="./begin.html"><tt class="refentry literal"><span class="pre">begin</span></tt></a>.</td>
|
||||
<td>An iterator to the first element of the sequence; see <a class="reference internal" href="./begin.html">begin</a>.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./end.html" class="identifier">end</a><s>::type</span></tt></td>
|
||||
<td>A past-the-end iterator to the sequence; see <a class="refentry reference" href="./end.html"><tt class="refentry literal"><span class="pre">end</span></tt></a>.</td>
|
||||
<td>A past-the-end iterator to the sequence; see <a class="reference internal" href="./end.html">end</a>.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./size.html" class="identifier">size</a><s>::type</span></tt></td>
|
||||
<td>The size of the sequence; see <a class="refentry reference" href="./size.html"><tt class="refentry literal"><span class="pre">size</span></tt></a>.</td>
|
||||
<td>The size of the sequence; see <a class="reference internal" href="./size.html">size</a>.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./empty.html" class="identifier">empty</a><s>::type</span></tt></td>
|
||||
<td>A boolean <a class="reference" href="./integral-constant.html">Integral Constant</a> <tt class="literal"><span class="pre">c</span></tt> such that
|
||||
<tt class="literal"><span class="pre">c::value</span> <span class="pre">==</span> <span class="pre">true</span></tt> if and only if the sequence is empty; see <a class="refentry reference" href="./empty.html"><tt class="refentry literal"><span class="pre">empty</span></tt></a>.</td>
|
||||
<td>A boolean <a class="reference internal" href="./integral-constant.html">Integral Constant</a> <tt class="literal"><span class="pre">c</span></tt> such that
|
||||
<tt class="literal"><span class="pre">c::value</span> <span class="pre">==</span> <span class="pre">true</span></tt> if and only if the sequence is empty; see <a class="reference internal" href="./empty.html">empty</a>.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./front.html" class="identifier">front</a><s>::type</span></tt></td>
|
||||
<td>The first element in the sequence; see <a class="refentry reference" href="./front.html"><tt class="refentry literal"><span class="pre">front</span></tt></a>.</td>
|
||||
<td>The first element in the sequence; see <a class="reference internal" href="./front.html">front</a>.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="invariants">
|
||||
<h3><a class="subsection-title" href="#invariants" name="invariants">Invariants</a></h3>
|
||||
<p>For any <a class="reference" href="./forward-sequence.html">Forward Sequence</a> <tt class="literal"><span class="pre">s</span></tt> the following invariants always hold:</p>
|
||||
<h3>Invariants</h3>
|
||||
<p>For any <a class="reference internal" href="./forward-sequence.html">Forward Sequence</a> <tt class="literal"><span class="pre">s</span></tt> the following invariants always hold:</p>
|
||||
<ul class="simple">
|
||||
<li>[<tt class="literal"><span class="pre"><a href="./begin.html" class="identifier">begin</a><s>::type</span></tt>, <tt class="literal"><span class="pre"><a href="./end.html" class="identifier">end</a><s>::type</span></tt>) is always a valid range.</li>
|
||||
<li>An algorithm that iterates through the range [<tt class="literal"><span class="pre"><a href="./begin.html" class="identifier">begin</a><s>::type</span></tt>, <tt class="literal"><span class="pre"><a href="./end.html" class="identifier">end</a><s>::type</span></tt>)
|
||||
<li>An algorithm that iterates through the range [<tt class="literal"><span class="pre"><a href="./begin.html" class="identifier">begin</a><s>::type</span></tt>, <tt class="literal"><span class="pre"><a href="./end.html" class="identifier">end</a><s>::type</span></tt>)
|
||||
will pass through every element of <tt class="literal"><span class="pre">s</span></tt> exactly once.</li>
|
||||
<li><tt class="literal"><span class="pre"><a href="./begin.html" class="identifier">begin</a><s>::type</span></tt> is identical to <tt class="literal"><span class="pre"><a href="./end.html" class="identifier">end</a><s>::type</span></tt> if and only if <tt class="literal"><span class="pre">s</span></tt> is empty.</li>
|
||||
<li>Two different iterations through <tt class="literal"><span class="pre">s</span></tt> will access its elements in the same order.</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="section" id="models">
|
||||
<h3><a class="subsection-title" href="#models" name="models">Models</a></h3>
|
||||
<h3>Models</h3>
|
||||
<ul class="simple">
|
||||
<li><a class="refentry reference" href="./vector.html"><tt class="refentry literal"><span class="pre">vector</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./map.html"><tt class="refentry literal"><span class="pre">map</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./range-c.html"><tt class="refentry literal"><span class="pre">range_c</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./iterator-range.html"><tt class="refentry literal"><span class="pre">iterator_range</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./filter-view.html"><tt class="refentry literal"><span class="pre">filter_view</span></tt></a></li>
|
||||
<li><a class="reference internal" href="./vector.html">vector</a></li>
|
||||
<li><a class="reference internal" href="./map.html">map</a></li>
|
||||
<li><a class="reference internal" href="./range-c.html">range_c</a></li>
|
||||
<li><a class="reference internal" href="./iterator-range.html">iterator_range</a></li>
|
||||
<li><a class="reference internal" href="./filter-view.html">filter_view</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="section" id="see-also">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./sequences.html">Sequences</a>, <a class="reference" href="./bidirectional-sequence.html">Bidirectional Sequence</a>, <a class="reference" href="./forward-iterator.html">Forward Iterator</a>, <a class="refentry reference" href="./begin.html"><tt class="refentry literal"><span class="pre">begin</span></tt></a> / <a class="refentry reference" href="./end.html"><tt class="refentry literal"><span class="pre">end</span></tt></a>, <a class="refentry reference" href="./size.html"><tt class="refentry literal"><span class="pre">size</span></tt></a>, <a class="refentry reference" href="./empty.html"><tt class="refentry literal"><span class="pre">empty</span></tt></a>, <a class="refentry reference" href="./front.html"><tt class="refentry literal"><span class="pre">front</span></tt></a></p>
|
||||
<!-- modtime: November 13, 2004 00:38:50 +0000 -->
|
||||
<h3>See also</h3>
|
||||
<p><a class="reference internal" href="./sequences.html">Sequences</a>, <a class="reference internal" href="./bidirectional-sequence.html">Bidirectional Sequence</a>, <a class="reference internal" href="./forward-iterator.html">Forward Iterator</a>, <a class="reference internal" href="./begin.html">begin</a> / <a class="reference internal" href="./end.html">end</a>, <a class="reference internal" href="./size.html">size</a>, <a class="reference internal" href="./empty.html">empty</a>, <a class="reference internal" href="./front.html">front</a></p>
|
||||
<!-- Sequences/Concepts//Bidirectional Sequence |20 -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./concepts.html" class="navigation-link">Prev</a> <a href="./bidirectional-sequence.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group">Back <a href="./bidirectional-sequence.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./concepts.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: Front Extensible Sequence</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,39 +12,39 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./sequences.html" class="navigation-link">Sequences</a> / <a href="./concepts.html" class="navigation-link">Concepts</a> / <a href="./front-extensible-sequence.html" class="navigation-link">Front Extensible Sequence</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="front-extensible-sequence">
|
||||
<h1><a class="toc-backref" href="./concepts.html#id328" name="front-extensible-sequence">Front Extensible Sequence</a></h1>
|
||||
<div class="section" id="front-description">
|
||||
<h1><a class="toc-backref" href="./concepts.html#id1399">Front Extensible Sequence</a></h1>
|
||||
<div class="section" id="id17">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>A <a class="reference" href="./front-extensible-sequence.html">Front Extensible Sequence</a> is an <a class="reference" href="./extensible-sequence.html">Extensible Sequence</a> that supports amortized constant
|
||||
<p>A <a class="reference internal" href="./front-extensible-sequence.html">Front Extensible Sequence</a> is an <a class="reference internal" href="./extensible-sequence.html">Extensible Sequence</a> that supports amortized constant
|
||||
time insertion and removal operations at the beginning.</p>
|
||||
</div>
|
||||
<div class="section" id="front-refinement-of">
|
||||
<div class="section" id="id18">
|
||||
<h3><a class="subsection-title" href="#refinement-of" name="refinement-of">Refinement of</a></h3>
|
||||
<p><a class="reference" href="./extensible-sequence.html">Extensible Sequence</a></p>
|
||||
<p><a class="reference internal" href="./extensible-sequence.html">Extensible Sequence</a></p>
|
||||
</div>
|
||||
<div class="section" id="front-expression-requirements">
|
||||
<div class="section" id="id19">
|
||||
<h3><a class="subsection-title" href="#expression-requirements" name="expression-requirements">Expression requirements</a></h3>
|
||||
<p>In addition to the requirements defined in <a class="reference" href="./extensible-sequence.html">Extensible Sequence</a>,
|
||||
for any <a class="reference" href="./back-extensible-sequence.html">Back Extensible Sequence</a> <tt class="literal"><span class="pre">s</span></tt> the following must be met:</p>
|
||||
<table border="1" class="table">
|
||||
<p>In addition to the requirements defined in <a class="reference internal" href="./extensible-sequence.html">Extensible Sequence</a>,
|
||||
for any <a class="reference internal" href="./back-extensible-sequence.html">Back Extensible Sequence</a> <tt class="literal"><span class="pre">s</span></tt> the following must be met:</p>
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="35%" />
|
||||
<col width="35%" />
|
||||
<col width="30%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Expression</th>
|
||||
<th>Type</th>
|
||||
<th>Complexity</th>
|
||||
<tr><th class="head">Expression</th>
|
||||
<th class="head">Type</th>
|
||||
<th class="head">Complexity</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./push-front.html" class="identifier">push_front</a><s,x>::type</span></tt></td>
|
||||
<td><a class="reference" href="./front-extensible-sequence.html">Front Extensible Sequence</a></td>
|
||||
<td><a class="reference internal" href="./front-extensible-sequence.html">Front Extensible Sequence</a></td>
|
||||
<td>Amortized constant time</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./pop-front.html" class="identifier">pop_front</a><s>::type</span></tt></td>
|
||||
<td><a class="reference" href="./front-extensible-sequence.html">Front Extensible Sequence</a></td>
|
||||
<td><a class="reference internal" href="./front-extensible-sequence.html">Front Extensible Sequence</a></td>
|
||||
<td>Amortized constant time</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./front.html" class="identifier">front</a><s>::type</span></tt></td>
|
||||
@@ -57,51 +54,52 @@ for any <a class="reference" href="./back-extensible-sequence.html">Back Extensi
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="front-expression-semantics">
|
||||
<div class="section" id="id20">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>The semantics of an expression are defined only
|
||||
where they differ from, or are not defined in <a class="reference" href="./extensible-sequence.html">Extensible Sequence</a>.</p>
|
||||
<table border="1" class="table">
|
||||
where they differ from, or are not defined in <a class="reference internal" href="./extensible-sequence.html">Extensible Sequence</a>.</p>
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="34%" />
|
||||
<col width="66%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Expression</th>
|
||||
<th>Semantics</th>
|
||||
<tr><th class="head">Expression</th>
|
||||
<th class="head">Semantics</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./push-front.html" class="identifier">push_front</a><s,x>::type</span></tt></td>
|
||||
<td>Equivalent to <tt class="literal"><span class="pre"><a href="./insert.html" class="identifier">insert</a><s,<a href="./begin.html" class="identifier">begin</a><s>::type,x>::type</span></tt>;
|
||||
see <a class="refentry reference" href="./push-front.html"><tt class="refentry literal"><span class="pre">push_front</span></tt></a>.</td>
|
||||
see <a class="reference internal" href="./push-front.html">push_front</a>.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./pop-front.html" class="identifier">pop_front</a><v>::type</span></tt></td>
|
||||
<td>Equivalent to <tt class="literal"><span class="pre"><a href="./erase.html" class="identifier">erase</a><s,<a href="./begin.html" class="identifier">begin</a><s>::type>::type</span></tt>;
|
||||
see <a class="refentry reference" href="./pop-front.html"><tt class="refentry literal"><span class="pre">pop_front</span></tt></a>.</td>
|
||||
see <a class="reference internal" href="./pop-front.html">pop_front</a>.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./front.html" class="identifier">front</a><s>::type</span></tt></td>
|
||||
<td>The first element in the sequence; see <a class="refentry reference" href="./front.html"><tt class="refentry literal"><span class="pre">front</span></tt></a>.</td>
|
||||
<td>The first element in the sequence; see <a class="reference internal" href="./front.html">front</a>.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="front-models">
|
||||
<div class="section" id="id21">
|
||||
<h3><a class="subsection-title" href="#models" name="models">Models</a></h3>
|
||||
<ul class="simple">
|
||||
<li><a class="refentry reference" href="./vector.html"><tt class="refentry literal"><span class="pre">vector</span></tt></a></li>
|
||||
<li><a class="refentry reference" href="./list.html"><tt class="refentry literal"><span class="pre">list</span></tt></a></li>
|
||||
<li><a class="reference internal" href="./vector.html">vector</a></li>
|
||||
<li><a class="reference internal" href="./list.html">list</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="section" id="front-see-also">
|
||||
<div class="section" id="id22">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./sequences.html">Sequences</a>, <a class="reference" href="./extensible-sequence.html">Extensible Sequence</a>, <a class="reference" href="./back-extensible-sequence.html">Back Extensible Sequence</a>, <a class="refentry reference" href="./push-front.html"><tt class="refentry literal"><span class="pre">push_front</span></tt></a>, <a class="refentry reference" href="./pop-front.html"><tt class="refentry literal"><span class="pre">pop_front</span></tt></a>, <a class="refentry reference" href="./front.html"><tt class="refentry literal"><span class="pre">front</span></tt></a></p>
|
||||
<!-- modtime: November 10, 2004 04:40:54 +0000 -->
|
||||
<p><a class="reference internal" href="./sequences.html">Sequences</a>, <a class="reference internal" href="./extensible-sequence.html">Extensible Sequence</a>, <a class="reference internal" href="./back-extensible-sequence.html">Back Extensible Sequence</a>, <a class="reference internal" href="./push-front.html">push_front</a>, <a class="reference internal" href="./pop-front.html">pop_front</a>, <a class="reference internal" href="./front.html">front</a></p>
|
||||
<!-- Sequences/Concepts//Back Extensible Sequence |60 -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./extensible-sequence.html" class="navigation-link">Prev</a> <a href="./back-extensible-sequence.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./extensible-sequence.html" class="navigation-link">Back</a> <a href="./back-extensible-sequence.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./concepts.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
@@ -1,22 +1,19 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: front_inserter</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
<body class="docframe refmanual">
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./back-inserter.html" class="navigation-link">Prev</a> <a href="./inserters-inserter.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./back-inserter.html" class="navigation-link">Back</a> <a href="./inserters-inserter.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./inserters.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./back-inserter.html" class="navigation-link">Prev</a> <a href="./inserter-class.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./back-inserter.html" class="navigation-link">Back</a> <a href="./inserter-class.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./inserters.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./algorithms.html" class="navigation-link">Algorithms</a> / <a href="./inserters.html" class="navigation-link">Inserters</a> / <a href="./front-inserter.html" class="navigation-link">front_inserter</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="front-inserter">
|
||||
<h1><a class="toc-backref" href="./inserters.html#id394" name="front-inserter">front_inserter</a></h1>
|
||||
<div class="section" id="inserters-front-synopsis">
|
||||
<h1><a class="toc-backref" href="./inserters.html#id1466">front_inserter</a></h1>
|
||||
<div class="section" id="id474">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
@@ -29,92 +26,93 @@ struct <a href="./front-inserter.html" class="identifier">front_inserter</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="inserters-front-description">
|
||||
<div class="section" id="id475">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Inserts elements at the beginning of the sequence.</p>
|
||||
</div>
|
||||
<div class="section" id="inserters-front-header">
|
||||
<div class="section" id="id476">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/front_inserter.hpp" class="header">boost/mpl/front_inserter.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="inserters-front-model-of">
|
||||
<div class="section" id="id477">
|
||||
<h3><a class="subsection-title" href="#model-of" name="model-of">Model of</a></h3>
|
||||
<p><a class="reference" href="./inserter.html">Inserter</a></p>
|
||||
<p><a class="reference internal" href="./inserter.html">Inserter</a></p>
|
||||
</div>
|
||||
<div class="section" id="inserters-front-parameters">
|
||||
<div class="section" id="id478">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="18%" />
|
||||
<col width="36%" />
|
||||
<col width="46%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">Seq</span></tt></td>
|
||||
<td><a class="reference" href="./front-extensible-sequence.html">Front Extensible Sequence</a></td>
|
||||
<td><a class="reference internal" href="./front-extensible-sequence.html">Front Extensible Sequence</a></td>
|
||||
<td>A sequence to bind the inserter to.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="inserters-front-expression-semantics">
|
||||
<div class="section" id="id479">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>The semantics of an expression are defined only
|
||||
where they differ from, or are not defined in <a class="reference" href="./inserter.html">Inserter</a>.</p>
|
||||
<p>For any <a class="reference" href="./front-extensible-sequence.html">Front Extensible Sequence</a> <tt class="literal"><span class="pre">s</span></tt>:</p>
|
||||
<table border="1" class="table">
|
||||
where they differ from, or are not defined in <a class="reference internal" href="./inserter.html">Inserter</a>.</p>
|
||||
<p>For any <a class="reference internal" href="./front-extensible-sequence.html">Front Extensible Sequence</a> <tt class="literal"><span class="pre">s</span></tt>:</p>
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="33%" />
|
||||
<col width="67%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Expression</th>
|
||||
<th>Semantics</th>
|
||||
<tr><th class="head">Expression</th>
|
||||
<th class="head">Semantics</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./front-inserter.html" class="identifier">front_inserter</a><s></span></tt></td>
|
||||
<td><p class="first">An <a class="reference" href="./inserter.html">Inserter</a> <tt class="literal"><span class="pre">in</span></tt>, equivalent to</p>
|
||||
<td><p class="first">An <a class="reference internal" href="./inserter.html">Inserter</a> <tt class="literal"><span class="pre">in</span></tt>, equivalent to</p>
|
||||
<pre class="last literal-block">
|
||||
struct in : <a href="./inserter.html" class="identifier">inserter</a><s,<a href="./push-front.html" class="identifier">push_front</a><_1,_2> > {};
|
||||
struct in : <a href="./inserter-class.html" class="identifier">inserter</a><s,<a href="./push-front.html" class="identifier">push_front</a><<a href="./placeholders.html" class="identifier">_1</a>,<a href="./placeholders.html" class="identifier">_2</a>> > {};
|
||||
</pre>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="inserters-front-complexity">
|
||||
<div class="section" id="id480">
|
||||
<h3><a class="subsection-title" href="#complexity" name="complexity">Complexity</a></h3>
|
||||
<p>Amortized constant time.</p>
|
||||
</div>
|
||||
<div class="section" id="inserters-front-example">
|
||||
<div class="section" id="id481">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./reverse-copy.html" class="identifier">reverse_copy</a><
|
||||
<a href="./range-c.html" class="identifier">range_c</a><int,0,5>
|
||||
, <a href="./front-inserter.html" class="identifier">front_inserter</a>< <a href="./vector-c.html" class="identifier">vector_c</a><int,5,6,7,8,9> >
|
||||
>::type range;
|
||||
|
||||
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( <a href="./equal.html" class="identifier">equal</a>< range, <a href="./range-c.html" class="identifier">range_c</a><int,0,10> > ));
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="inserters-front-see-also">
|
||||
<div class="section" id="id482">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./algorithms.html">Algorithms</a>, <a class="reference" href="./inserter.html">Inserter</a>, <a class="reference" href="./reversible-algorithm.html">Reversible Algorithm</a>, <a class="refentry reference" href="./inserters-inserter.html"><tt class="refentry literal"><span class="pre">inserter</span></tt></a>, <a class="refentry reference" href="./back-inserter.html"><tt class="refentry literal"><span class="pre">back_inserter</span></tt></a>, <a class="refentry reference" href="./push-front.html"><tt class="refentry literal"><span class="pre">push_front</span></tt></a></p>
|
||||
<!-- modtime: November 10, 2004 04:40:57 +0000 -->
|
||||
<p><a class="reference internal" href="./algorithms.html">Algorithms</a>, <a class="reference internal" href="./inserter.html">Inserter</a>, <a class="reference internal" href="./reversible-algorithm.html">Reversible Algorithm</a>, <a class="reference internal" href="./inserter-class.html">inserter (class)</a>, <a class="reference internal" href="./back-inserter.html">back_inserter</a>, <a class="reference internal" href="./push-front.html">push_front</a></p>
|
||||
<!-- Algorithms/Inserters//inserter -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./back-inserter.html" class="navigation-link">Prev</a> <a href="./inserters-inserter.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./back-inserter.html" class="navigation-link">Back</a> <a href="./inserters-inserter.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./inserters.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./back-inserter.html" class="navigation-link">Prev</a> <a href="./inserter-class.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./back-inserter.html" class="navigation-link">Back</a> <a href="./inserter-class.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./inserters.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+28
-28
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: front</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,8 +12,8 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./sequences.html" class="navigation-link">Sequences</a> / <a href="./intrinsic-metafunctions.html" class="navigation-link">Intrinsic Metafunctions</a> / <a href="./front.html" class="navigation-link">front</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="front">
|
||||
<h1><a class="toc-backref" href="./intrinsic-metafunctions.html#id362" name="front">front</a></h1>
|
||||
<div class="section" id="front-synopsis">
|
||||
<h1><a class="toc-backref" href="./intrinsic-metafunctions.html#id1434">front</a></h1>
|
||||
<div class="section" id="id256">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
@@ -28,55 +25,57 @@ struct <a href="./front.html" class="identifier">front</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="intrinsic-front-description">
|
||||
<div class="section" id="id257">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Returns the first element in the sequence.</p>
|
||||
</div>
|
||||
<div class="section" id="front-header">
|
||||
<div class="section" id="id258">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/front.hpp" class="header">boost/mpl/front.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="front-model-of">
|
||||
<div class="section" id="id259">
|
||||
<h3><a class="subsection-title" href="#model-of" name="model-of">Model of</a></h3>
|
||||
<p><a class="reference" href="./tag-dispatched.html">Tag Dispatched Metafunction</a></p>
|
||||
<p><a class="reference internal" href="./tag-dispatched-metafunction.html">Tag Dispatched Metafunction</a></p>
|
||||
</div>
|
||||
<div class="section" id="front-parameters">
|
||||
<div class="section" id="id260">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="18%" />
|
||||
<col width="27%" />
|
||||
<col width="55%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">Sequence</span></tt></td>
|
||||
<td><a class="reference" href="./forward-sequence.html">Forward Sequence</a></td>
|
||||
<td><a class="reference internal" href="./forward-sequence.html">Forward Sequence</a></td>
|
||||
<td>A sequence to be examined.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="intrinsic-front-expression-semantics">
|
||||
<div class="section" id="id261">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For any <a class="reference" href="./forward-sequence.html">Forward Sequence</a> <tt class="literal"><span class="pre">s</span></tt>:</p>
|
||||
<p>For any <a class="reference internal" href="./forward-sequence.html">Forward Sequence</a> <tt class="literal"><span class="pre">s</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./front.html" class="identifier">front</a><s>::type t;
|
||||
typedef <a href="./front.html" class="identifier">front</a><s>::type t;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body">A type.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first">A type.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body"><tt class="literal"><span class="pre"><a href="./empty.html" class="identifier">empty</a><s>::value</span> <span class="pre">==</span> <span class="pre">false</span></tt>.</td>
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body"><p class="first"><tt class="literal"><span class="pre"><a href="./empty.html" class="identifier">empty</a><s>::value</span> <span class="pre">==</span> <span class="pre">false</span></tt>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Equivalent to</p>
|
||||
<pre class="last literal-block">
|
||||
@@ -87,11 +86,11 @@ typedef <a href="./deref.html" class="identifier">deref</a>< <a href="./begin
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="front-complexity">
|
||||
<div class="section" id="id262">
|
||||
<h3><a class="subsection-title" href="#complexity" name="complexity">Complexity</a></h3>
|
||||
<p>Amortized constant time.</p>
|
||||
</div>
|
||||
<div class="section" id="front-example">
|
||||
<div class="section" id="id263">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./list.html" class="identifier">list</a><long>::type types1;
|
||||
@@ -103,15 +102,16 @@ typedef <a href="./list.html" class="identifier">list</a><char,int,long>::
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( is_same< <a href="./front.html" class="identifier">front</a><types3>::type, char> ));
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="intrinsic-front-see-also">
|
||||
<div class="section" id="id264">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./forward-sequence.html">Forward Sequence</a>, <a class="refentry reference" href="./back.html"><tt class="refentry literal"><span class="pre">back</span></tt></a>, <a class="refentry reference" href="./push-front.html"><tt class="refentry literal"><span class="pre">push_front</span></tt></a>, <a class="refentry reference" href="./begin.html"><tt class="refentry literal"><span class="pre">begin</span></tt></a>, <a class="refentry reference" href="./deref.html"><tt class="refentry literal"><span class="pre">deref</span></tt></a>, <a class="refentry reference" href="./at.html"><tt class="refentry literal"><span class="pre">at</span></tt></a></p>
|
||||
<!-- modtime: November 13, 2004 01:27:55 +0000 -->
|
||||
<p><a class="reference internal" href="./forward-sequence.html">Forward Sequence</a>, <a class="reference internal" href="./back.html">back</a>, <a class="reference internal" href="./push-front.html">push_front</a>, <a class="reference internal" href="./begin.html">begin</a>, <a class="reference internal" href="./deref.html">deref</a>, <a class="reference internal" href="./at.html">at</a></p>
|
||||
<!-- Sequences/Intrinsic Metafunctions//has_key -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./erase-key.html" class="navigation-link">Prev</a> <a href="./has-key.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./erase-key.html" class="navigation-link">Back</a> <a href="./has-key.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./intrinsic-metafunctions.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: greater_equal</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,8 +12,8 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./metafunctions.html" class="navigation-link">Metafunctions</a> / <a href="./comparisons.html" class="navigation-link">Comparisons</a> / <a href="./greater-equal.html" class="navigation-link">greater_equal</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="greater-equal">
|
||||
<h1><a class="toc-backref" href="./comparisons.html#id472" name="greater-equal">greater_equal</a></h1>
|
||||
<div class="section" id="comparisons-greater-synopsis">
|
||||
<h1><a class="toc-backref" href="./comparisons.html#id1546">greater_equal</a></h1>
|
||||
<div class="section" id="id1041">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
@@ -29,58 +26,59 @@ struct <a href="./greater-equal.html" class="identifier">greater_equal</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="comparisons-greater-description">
|
||||
<div class="section" id="id1042">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Returns a true-valued <a class="reference" href="./integral-constant.html">Integral Constant</a> if <tt class="literal"><span class="pre">T1</span></tt> is greater than or equal to <tt class="literal"><span class="pre">T2</span></tt>.</p>
|
||||
<p>Returns a true-valued <a class="reference internal" href="./integral-constant.html">Integral Constant</a> if <tt class="literal"><span class="pre">T1</span></tt> is greater than or equal to <tt class="literal"><span class="pre">T2</span></tt>.</p>
|
||||
</div>
|
||||
<div class="section" id="comparisons-greater-header">
|
||||
<div class="section" id="id1043">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/greater_equal.hpp" class="header">boost/mpl/greater_equal.hpp</a>>
|
||||
#include <<a href="../../../../boost/mpl/comparison.hpp" class="header">boost/mpl/comparison.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="comparisons-greater-model-of">
|
||||
<div class="section" id="id1044">
|
||||
<h3><a class="subsection-title" href="#model-of" name="model-of">Model of</a></h3>
|
||||
<p><a class="reference" href="./numeric-metafunction.html">Numeric Metafunction</a></p>
|
||||
<p><a class="reference internal" href="./numeric-metafunction.html">Numeric Metafunction</a></p>
|
||||
</div>
|
||||
<div class="section" id="comparisons-greater-parameters">
|
||||
<div class="section" id="id1045">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="17%" />
|
||||
<col width="30%" />
|
||||
<col width="53%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">T1</span></tt>, <tt class="literal"><span class="pre">T2</span></tt></td>
|
||||
<td><a class="reference" href="./integral-constant.html">Integral Constant</a></td>
|
||||
<td><a class="reference internal" href="./integral-constant.html">Integral Constant</a></td>
|
||||
<td>Operation's arguments.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p>[<em>Note:</em> The requirements listed in this specification
|
||||
are the ones imposed by the default implementation. See <a class="reference" href="./numeric-metafunction.html">Numeric Metafunction</a> concept
|
||||
for the details on how to provide an implementation for a user-defined numeric type
|
||||
that does not satisfy the <a class="reference" href="./integral-constant.html">Integral Constant</a> requirements. — <em>end note</em>]</p>
|
||||
are the ones imposed by the default implementation. See <a class="reference internal" href="./numeric-metafunction.html">Numeric Metafunction</a> concept
|
||||
for the details on how to provide an implementation for a user-defined numeric type
|
||||
that does not satisfy the <a class="reference internal" href="./integral-constant.html">Integral Constant</a> requirements. — <em>end note</em>]</p>
|
||||
</div>
|
||||
<div class="section" id="comparisons-greater-expression-semantics">
|
||||
<div class="section" id="id1046">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For any <a class="reference" href="./integral-constant.html">Integral Constant</a>s <tt class="literal"><span class="pre">c1</span></tt> and <tt class="literal"><span class="pre">c2</span></tt>:</p>
|
||||
<p>For any <a class="reference internal" href="./integral-constant.html">Integral Constant</a>s <tt class="literal"><span class="pre">c1</span></tt> and <tt class="literal"><span class="pre">c2</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./greater-equal.html" class="identifier">greater_equal</a><c1,c2>::type r;
|
||||
typedef <a href="./greater-equal.html" class="identifier">greater_equal</a><c1,c2>::type r;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference" href="./integral-constant.html">Integral Constant</a>.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><a class="reference internal" href="./integral-constant.html">Integral Constant</a>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Equivalent to</p>
|
||||
<pre class="last literal-block">
|
||||
@@ -92,13 +90,14 @@ typedef <a href="./bool.html" class="identifier">bool_</a>< (c1::value < c
|
||||
</table>
|
||||
<!-- .......................................................................... -->
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./greater-equal.html" class="identifier">greater_equal</a><c1,c2> r;
|
||||
typedef <a href="./greater-equal.html" class="identifier">greater_equal</a><c1,c2> r;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference" href="./integral-constant.html">Integral Constant</a>.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><a class="reference internal" href="./integral-constant.html">Integral Constant</a>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Equivalent to</p>
|
||||
<pre class="last literal-block">
|
||||
@@ -109,11 +108,11 @@ struct r : <a href="./greater-equal.html" class="identifier">greater_equal</a>&l
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="comparisons-greater-complexity">
|
||||
<div class="section" id="id1047">
|
||||
<h3><a class="subsection-title" href="#complexity" name="complexity">Complexity</a></h3>
|
||||
<p>Amortized constant time.</p>
|
||||
</div>
|
||||
<div class="section" id="comparisons-greater-example">
|
||||
<div class="section" id="id1048">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( <a href="./greater-equal.html" class="identifier">greater_equal</a>< <a href="./int.html" class="identifier">int_</a><10>, <a href="./int.html" class="identifier">int_</a><0> > ));
|
||||
@@ -121,15 +120,16 @@ struct r : <a href="./greater-equal.html" class="identifier">greater_equal</a>&l
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( <a href="./greater-equal.html" class="identifier">greater_equal</a>< <a href="./long.html" class="identifier">long_</a><10>, <a href="./int.html" class="identifier">int_</a><10> > ));
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="comparisons-greater-see-also">
|
||||
<div class="section" id="id1049">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./comparisons.html">Comparisons</a>, <a class="reference" href="./numeric-metafunction.html">Numeric Metafunction</a>, <a class="refentry reference" href="./numeric-cast.html"><tt class="refentry literal"><span class="pre">numeric_cast</span></tt></a>, <a class="refentry reference" href="./greater.html"><tt class="refentry literal"><span class="pre">greater</span></tt></a>, <a class="refentry reference" href="./less.html"><tt class="refentry literal"><span class="pre">less</span></tt></a>, <a class="refentry reference" href="./equal-to.html"><tt class="refentry literal"><span class="pre">equal_to</span></tt></a></p>
|
||||
<!-- modtime: November 10, 2004 04:40:45 +0000 -->
|
||||
<p><a class="reference internal" href="./comparisons.html">Comparisons</a>, <a class="reference internal" href="./numeric-metafunction.html">Numeric Metafunction</a>, <a class="reference internal" href="./numeric-cast.html">numeric_cast</a>, <a class="reference internal" href="./greater.html">greater</a>, <a class="reference internal" href="./less.html">less</a>, <a class="reference internal" href="./equal-to.html">equal_to</a></p>
|
||||
<!-- Metafunctions/Comparisons//equal_to |50 -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./greater.html" class="navigation-link">Prev</a> <a href="./equal-to.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./greater.html" class="navigation-link">Back</a> <a href="./equal-to.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./comparisons.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+34
-34
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: greater</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,8 +12,8 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./metafunctions.html" class="navigation-link">Metafunctions</a> / <a href="./comparisons.html" class="navigation-link">Comparisons</a> / <a href="./greater.html" class="navigation-link">greater</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="greater">
|
||||
<h1><a class="toc-backref" href="./comparisons.html#id471" name="greater">greater</a></h1>
|
||||
<div class="section" id="greater-synopsis">
|
||||
<h1><a class="toc-backref" href="./comparisons.html#id1545">greater</a></h1>
|
||||
<div class="section" id="id1032">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
@@ -29,58 +26,59 @@ struct <a href="./greater.html" class="identifier">greater</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="greater-description">
|
||||
<div class="section" id="id1033">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Returns a true-valued <a class="reference" href="./integral-constant.html">Integral Constant</a> if <tt class="literal"><span class="pre">T1</span></tt> is greater than <tt class="literal"><span class="pre">T2</span></tt>.</p>
|
||||
<p>Returns a true-valued <a class="reference internal" href="./integral-constant.html">Integral Constant</a> if <tt class="literal"><span class="pre">T1</span></tt> is greater than <tt class="literal"><span class="pre">T2</span></tt>.</p>
|
||||
</div>
|
||||
<div class="section" id="greater-header">
|
||||
<div class="section" id="id1034">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/greater.hpp" class="header">boost/mpl/greater.hpp</a>>
|
||||
#include <<a href="../../../../boost/mpl/comparison.hpp" class="header">boost/mpl/comparison.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="greater-model-of">
|
||||
<div class="section" id="id1035">
|
||||
<h3><a class="subsection-title" href="#model-of" name="model-of">Model of</a></h3>
|
||||
<p><a class="reference" href="./numeric-metafunction.html">Numeric Metafunction</a></p>
|
||||
<p><a class="reference internal" href="./numeric-metafunction.html">Numeric Metafunction</a></p>
|
||||
</div>
|
||||
<div class="section" id="greater-parameters">
|
||||
<div class="section" id="id1036">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="17%" />
|
||||
<col width="30%" />
|
||||
<col width="53%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">T1</span></tt>, <tt class="literal"><span class="pre">T2</span></tt></td>
|
||||
<td><a class="reference" href="./integral-constant.html">Integral Constant</a></td>
|
||||
<td><a class="reference internal" href="./integral-constant.html">Integral Constant</a></td>
|
||||
<td>Operation's arguments.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<p>[<em>Note:</em> The requirements listed in this specification
|
||||
are the ones imposed by the default implementation. See <a class="reference" href="./numeric-metafunction.html">Numeric Metafunction</a> concept
|
||||
for the details on how to provide an implementation for a user-defined numeric type
|
||||
that does not satisfy the <a class="reference" href="./integral-constant.html">Integral Constant</a> requirements. — <em>end note</em>]</p>
|
||||
are the ones imposed by the default implementation. See <a class="reference internal" href="./numeric-metafunction.html">Numeric Metafunction</a> concept
|
||||
for the details on how to provide an implementation for a user-defined numeric type
|
||||
that does not satisfy the <a class="reference internal" href="./integral-constant.html">Integral Constant</a> requirements. — <em>end note</em>]</p>
|
||||
</div>
|
||||
<div class="section" id="greater-expression-semantics">
|
||||
<div class="section" id="id1037">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For any <a class="reference" href="./integral-constant.html">Integral Constant</a>s <tt class="literal"><span class="pre">c1</span></tt> and <tt class="literal"><span class="pre">c2</span></tt>:</p>
|
||||
<p>For any <a class="reference internal" href="./integral-constant.html">Integral Constant</a>s <tt class="literal"><span class="pre">c1</span></tt> and <tt class="literal"><span class="pre">c2</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./greater.html" class="identifier">greater</a><c1,c2>::type r;
|
||||
typedef <a href="./greater.html" class="identifier">greater</a><c1,c2>::type r;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference" href="./integral-constant.html">Integral Constant</a>.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><a class="reference internal" href="./integral-constant.html">Integral Constant</a>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Equivalent to</p>
|
||||
<pre class="last literal-block">
|
||||
@@ -92,13 +90,14 @@ typedef <a href="./bool.html" class="identifier">bool_</a>< (c1::value < c
|
||||
</table>
|
||||
<!-- .......................................................................... -->
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./greater.html" class="identifier">greater</a><c1,c2> r;
|
||||
typedef <a href="./greater.html" class="identifier">greater</a><c1,c2> r;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference" href="./integral-constant.html">Integral Constant</a>.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><a class="reference internal" href="./integral-constant.html">Integral Constant</a>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Equivalent to</p>
|
||||
<pre class="last literal-block">
|
||||
@@ -109,11 +108,11 @@ struct r : <a href="./greater.html" class="identifier">greater</a><c1,c2>:
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="greater-complexity">
|
||||
<div class="section" id="id1038">
|
||||
<h3><a class="subsection-title" href="#complexity" name="complexity">Complexity</a></h3>
|
||||
<p>Amortized constant time.</p>
|
||||
</div>
|
||||
<div class="section" id="greater-example">
|
||||
<div class="section" id="id1039">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( <a href="./greater.html" class="identifier">greater</a>< <a href="./int.html" class="identifier">int_</a><10>, <a href="./int.html" class="identifier">int_</a><0> > ));
|
||||
@@ -121,15 +120,16 @@ struct r : <a href="./greater.html" class="identifier">greater</a><c1,c2>:
|
||||
<a href="./assert-not.html" class="identifier">BOOST_MPL_ASSERT_NOT</a>(( <a href="./greater.html" class="identifier">greater</a>< <a href="./long.html" class="identifier">long_</a><10>, <a href="./int.html" class="identifier">int_</a><10> > ));
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="greater-see-also">
|
||||
<div class="section" id="id1040">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./comparisons.html">Comparisons</a>, <a class="reference" href="./numeric-metafunction.html">Numeric Metafunction</a>, <a class="refentry reference" href="./numeric-cast.html"><tt class="refentry literal"><span class="pre">numeric_cast</span></tt></a>, <a class="refentry reference" href="./greater-equal.html"><tt class="refentry literal"><span class="pre">greater_equal</span></tt></a>, <a class="refentry reference" href="./less.html"><tt class="refentry literal"><span class="pre">less</span></tt></a>, <a class="refentry reference" href="./equal-to.html"><tt class="refentry literal"><span class="pre">equal_to</span></tt></a></p>
|
||||
<!-- modtime: November 10, 2004 04:40:49 +0000 -->
|
||||
<p><a class="reference internal" href="./comparisons.html">Comparisons</a>, <a class="reference internal" href="./numeric-metafunction.html">Numeric Metafunction</a>, <a class="reference internal" href="./numeric-cast.html">numeric_cast</a>, <a class="reference internal" href="./greater-equal.html">greater_equal</a>, <a class="reference internal" href="./less.html">less</a>, <a class="reference internal" href="./equal-to.html">equal_to</a></p>
|
||||
<!-- Metafunctions/Comparisons//greater_equal |40 -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./less-equal.html" class="navigation-link">Prev</a> <a href="./greater-equal.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./less-equal.html" class="navigation-link">Back</a> <a href="./greater-equal.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./comparisons.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+26
-28
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: has_key</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,8 +12,8 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./sequences.html" class="navigation-link">Sequences</a> / <a href="./intrinsic-metafunctions.html" class="navigation-link">Intrinsic Metafunctions</a> / <a href="./has-key.html" class="navigation-link">has_key</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="has-key">
|
||||
<h1><a class="toc-backref" href="./intrinsic-metafunctions.html#id363" name="has-key">has_key</a></h1>
|
||||
<div class="section" id="has-synopsis">
|
||||
<h1><a class="toc-backref" href="./intrinsic-metafunctions.html#id1435">has_key</a></h1>
|
||||
<div class="section" id="id265">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
@@ -29,38 +26,38 @@ struct <a href="./has-key.html" class="identifier">has_key</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="has-description">
|
||||
<div class="section" id="id266">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Returns a true-valued <a class="reference" href="./integral-constant.html">Integral Constant</a> if <tt class="literal"><span class="pre">Sequence</span></tt> contains an element
|
||||
<p>Returns a true-valued <a class="reference internal" href="./integral-constant.html">Integral Constant</a> if <tt class="literal"><span class="pre">Sequence</span></tt> contains an element
|
||||
with key <tt class="literal"><span class="pre">Key</span></tt>.</p>
|
||||
</div>
|
||||
<div class="section" id="has-header">
|
||||
<div class="section" id="id267">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/has_key.hpp" class="header">boost/mpl/has_key.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="has-model-of">
|
||||
<div class="section" id="id268">
|
||||
<h3><a class="subsection-title" href="#model-of" name="model-of">Model of</a></h3>
|
||||
<p><a class="reference" href="./tag-dispatched.html">Tag Dispatched Metafunction</a></p>
|
||||
<p><a class="reference internal" href="./tag-dispatched-metafunction.html">Tag Dispatched Metafunction</a></p>
|
||||
</div>
|
||||
<div class="section" id="has-parameters">
|
||||
<div class="section" id="id269">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="17%" />
|
||||
<col width="30%" />
|
||||
<col width="53%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">Sequence</span></tt></td>
|
||||
<td><a class="reference" href="./associative-sequence.html">Associative Sequence</a></td>
|
||||
<td><a class="reference internal" href="./associative-sequence.html">Associative Sequence</a></td>
|
||||
<td>A sequence to query.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre">Key</span></tt></td>
|
||||
@@ -70,17 +67,17 @@ with key <tt class="literal"><span class="pre">Key</span></tt>.</p>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="has-expression-semantics">
|
||||
<div class="section" id="id270">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For any <a class="reference" href="./associative-sequence.html">Associative Sequence</a> <tt class="literal"><span class="pre">s</span></tt>, and arbitrary type <tt class="literal"><span class="pre">key</span></tt>:</p>
|
||||
<p>For any <a class="reference internal" href="./associative-sequence.html">Associative Sequence</a> <tt class="literal"><span class="pre">s</span></tt>, and arbitrary type <tt class="literal"><span class="pre">key</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./has-key.html" class="identifier">has_key</a><s,key>::type c;
|
||||
typedef <a href="./has-key.html" class="identifier">has_key</a><s,key>::type c;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body">Boolean <a class="reference" href="./integral-constant.html">Integral Constant</a>.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body">Boolean <a class="reference internal" href="./integral-constant.html">Integral Constant</a>.</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><tt class="literal"><span class="pre">c::value</span> <span class="pre">==</span> <span class="pre">true</span></tt> if <tt class="literal"><span class="pre">key</span></tt> is in <tt class="literal"><span class="pre">s</span></tt>'s set of keys; otherwise
|
||||
<tt class="literal"><span class="pre">c::value</span> <span class="pre">==</span> <span class="pre">false</span></tt>.</td>
|
||||
@@ -88,11 +85,11 @@ typedef <a href="./has-key.html" class="identifier">has_key</a><s,key>::ty
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="has-complexity">
|
||||
<div class="section" id="id271">
|
||||
<h3><a class="subsection-title" href="#complexity" name="complexity">Complexity</a></h3>
|
||||
<p>Amortized constant time.</p>
|
||||
</div>
|
||||
<div class="section" id="has-example">
|
||||
<div class="section" id="id272">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./map.html" class="identifier">map</a>< <a href="./pair.html" class="identifier">pair</a><int,unsigned>, <a href="./pair.html" class="identifier">pair</a><char,long> > m;
|
||||
@@ -102,15 +99,16 @@ typedef <a href="./insert.html" class="identifier">insert</a>< m, <a href="./
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( <a href="./has-key.html" class="identifier">has_key</a><m1,long> ));
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="has-see-also">
|
||||
<div class="section" id="id273">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./associative-sequence.html">Associative Sequence</a>, <a class="refentry reference" href="./count.html"><tt class="refentry literal"><span class="pre">count</span></tt></a>, <a class="refentry reference" href="./insert.html"><tt class="refentry literal"><span class="pre">insert</span></tt></a>, <a class="refentry reference" href="./erase-key.html"><tt class="refentry literal"><span class="pre">erase_key</span></tt></a></p>
|
||||
<!-- modtime: November 13, 2004 01:28:31 +0000 -->
|
||||
<p><a class="reference internal" href="./associative-sequence.html">Associative Sequence</a>, <a class="reference internal" href="./count.html">count</a>, <a class="reference internal" href="./insert.html">insert</a>, <a class="reference internal" href="./erase-key.html">erase_key</a></p>
|
||||
<!-- Sequences/Intrinsic Metafunctions//insert -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./front.html" class="navigation-link">Prev</a> <a href="./insert.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./front.html" class="navigation-link">Back</a> <a href="./insert.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./intrinsic-metafunctions.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
@@ -0,0 +1,139 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: BOOST_MPL_HAS_XXX_TEMPLATE_DEF</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
<body class="docframe refmanual">
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./introspection.html" class="navigation-link">Prev</a> <a href="./has-xxx-template-named-def.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group">Back <a href="./has-xxx-template-named-def.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./introspection.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./macros.html" class="navigation-link">Macros</a> / <a href="./introspection.html" class="navigation-link">Introspection</a> / <a href="./has-xxx-template-def.html" class="navigation-link">BOOST_MPL_HAS_XXX_TEMPLATE_DEF</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="boost-mpl-has-xxx-template-def">
|
||||
<h1><a class="toc-backref" href="./introspection.html#id1593">BOOST_MPL_HAS_XXX_TEMPLATE_DEF</a></h1>
|
||||
<div class="section" id="id1315">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
#define <a href="./has-xxx-template-def.html" class="identifier">BOOST_MPL_HAS_XXX_TEMPLATE_DEF</a>(name) \
|
||||
<em>unspecified token sequence</em> \
|
||||
/**/
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="id1316">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Expands into the definition of a boolean <a class="reference internal" href="./metafunction.html">Metafunction</a> <tt class="literal"><span class="pre">has_name</span></tt>
|
||||
such that for any type <tt class="literal"><span class="pre">x</span></tt> <tt class="literal"><span class="pre">has_name<x>::value</span> <span class="pre">==</span> <span class="pre">true</span></tt> if and
|
||||
only if <tt class="literal"><span class="pre">x</span></tt> is a class type and has a nested template member
|
||||
<tt class="literal"><span class="pre">x::template</span> <span class="pre">name</span></tt> with no more than
|
||||
<a class="reference internal" href="./limit-metafunction-arity.html">BOOST_MPL_LIMIT_METAFUNCTION_ARITY</a> parameters.</p>
|
||||
<p>On deficient compilers not capable of performing the detection,
|
||||
<tt class="literal"><span class="pre">has_name<x>::value</span></tt> is always <tt class="literal"><span class="pre">false</span></tt>. A boolean configuration
|
||||
macro, <a class="reference internal" href="./cfg-no-has-xxx-template.html">BOOST_MPL_CFG_NO_HAS_XXX_TEMPLATE</a>, is provided to signal or
|
||||
override the "deficient" status of a particular compiler.</p>
|
||||
<p>[<em>Note:</em> <a class="reference internal" href="./has-xxx-template-def.html">BOOST_MPL_HAS_XXX_TEMPLATE_DEF</a> is a simplified front end to
|
||||
the <a class="reference internal" href="./has-xxx-template-named-def.html">BOOST_MPL_HAS_XXX_TEMPLATE_NAMED_DEF</a> introspection macro — <em>end note</em>]</p>
|
||||
</div>
|
||||
<div class="section" id="id1317">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/has_xxx.hpp" class="header">boost/mpl/has_xxx.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="id1318">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="15%" />
|
||||
<col width="32%" />
|
||||
<col width="53%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">name</span></tt></td>
|
||||
<td>A legal identifier token</td>
|
||||
<td>A name of the template member being detected.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="id1319">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For any legal C++ identifier <tt class="literal"><span class="pre">name</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
<a href="./has-xxx-template-def.html" class="identifier">BOOST_MPL_HAS_XXX_TEMPLATE_DEF</a>(name)
|
||||
</pre>
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body"><p class="first">Appears at namespace scope.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first">None.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Equivalent to</p>
|
||||
<pre class="last literal-block">
|
||||
<a href="./has-xxx-template-named-def.html" class="identifier">BOOST_MPL_HAS_XXX_TEMPLATE_NAMED_DEF</a>(
|
||||
BOOST_PP_CAT(has_,name), name, false
|
||||
)
|
||||
</pre>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="id1320">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
<a href="./has-xxx-template-def.html" class="identifier">BOOST_MPL_HAS_XXX_TEMPLATE_DEF</a>(xxx)
|
||||
|
||||
struct test1 {};
|
||||
struct test2 { void xxx(); };
|
||||
struct test3 { int xxx; };
|
||||
struct test4 { static int xxx(); };
|
||||
struct test5 { typedef int xxx; };
|
||||
struct test6 { struct xxx; };
|
||||
struct test7 { typedef void (*xxx)(); };
|
||||
struct test8 { typedef void (xxx)(); };
|
||||
struct test9 { template< class T > struct xxx {}; };
|
||||
|
||||
<a href="./assert-not.html" class="identifier">BOOST_MPL_ASSERT_NOT</a>(( has_xxx<test1> ));
|
||||
<a href="./assert-not.html" class="identifier">BOOST_MPL_ASSERT_NOT</a>(( has_xxx<test2> ));
|
||||
<a href="./assert-not.html" class="identifier">BOOST_MPL_ASSERT_NOT</a>(( has_xxx<test3> ));
|
||||
<a href="./assert-not.html" class="identifier">BOOST_MPL_ASSERT_NOT</a>(( has_xxx<test4> ));
|
||||
<a href="./assert-not.html" class="identifier">BOOST_MPL_ASSERT_NOT</a>(( has_xxx<test5> ));
|
||||
<a href="./assert-not.html" class="identifier">BOOST_MPL_ASSERT_NOT</a>(( has_xxx<test6> ));
|
||||
<a href="./assert-not.html" class="identifier">BOOST_MPL_ASSERT_NOT</a>(( has_xxx<test7> ));
|
||||
<a href="./assert-not.html" class="identifier">BOOST_MPL_ASSERT_NOT</a>(( has_xxx<test8> ));
|
||||
|
||||
#if !defined(<a href="./cfg-no-has-xxx-template.html" class="identifier">BOOST_MPL_CFG_NO_HAS_XXX_TEMPLATE</a>)
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( has_xxx<test9> ));
|
||||
#endif
|
||||
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( has_xxx<test9, <a href="./bool.html" class="identifier">true_</a>> ));
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="id1321">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference internal" href="./macros.html">Macros</a>, <a class="reference internal" href="./has-xxx-template-named-def.html">BOOST_MPL_HAS_XXX_TEMPLATE_NAMED_DEF</a>,
|
||||
<a class="reference internal" href="./cfg-no-has-xxx-template.html">BOOST_MPL_CFG_NO_HAS_XXX_TEMPLATE</a>, <a class="reference internal" href="./limit-metafunction-arity.html">BOOST_MPL_LIMIT_METAFUNCTION_ARITY</a></p>
|
||||
<!-- Macros/Introspection//BOOST_MPL_HAS_XXX_TEMPLATE_NAMED_DEF -->
|
||||
<!-- Copyright Daniel Walker 2007. -->
|
||||
<!-- Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./introspection.html" class="navigation-link">Prev</a> <a href="./has-xxx-template-named-def.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group">Back <a href="./has-xxx-template-named-def.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./introspection.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td><div class="copyright-footer"></div></td></tr></table></body>
|
||||
</html>
|
||||
@@ -0,0 +1,192 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: BOOST_MPL_HAS_XXX_TEMPLATE_NAMED_DEF</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
<body class="docframe refmanual">
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./has-xxx-template-def.html" class="navigation-link">Prev</a> <a href="./has-xxx-trait-def.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./has-xxx-template-def.html" class="navigation-link">Back</a> <a href="./has-xxx-trait-def.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./introspection.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./macros.html" class="navigation-link">Macros</a> / <a href="./introspection.html" class="navigation-link">Introspection</a> / <a href="./has-xxx-template-named-def.html" class="navigation-link">BOOST_MPL_HAS_XXX_TEMPLATE_NAMED_DEF</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="boost-mpl-has-xxx-template-named-def">
|
||||
<h1><a class="toc-backref" href="./introspection.html#id1594">BOOST_MPL_HAS_XXX_TEMPLATE_NAMED_DEF</a></h1>
|
||||
<div class="section" id="id1322">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
#define <a href="./has-xxx-template-named-def.html" class="identifier">BOOST_MPL_HAS_XXX_TEMPLATE_NAMED_DEF</a>(trait, name, default_) \
|
||||
<em>unspecified token sequence</em> \
|
||||
/**/
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="id1323">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Expands into the definition of a boolean <a class="reference internal" href="./metafunction.html">Metafunction</a> <tt class="literal"><span class="pre">trait</span></tt> such
|
||||
that for any type <tt class="literal"><span class="pre">x</span></tt> <tt class="literal"><span class="pre">trait<x>::value</span> <span class="pre">==</span> <span class="pre">true</span></tt> if and only if
|
||||
<tt class="literal"><span class="pre">x</span></tt> is a class type and has a nested template member <tt class="literal"><span class="pre">x::template</span>
|
||||
<span class="pre">name</span></tt> with no more than <a class="reference internal" href="./limit-metafunction-arity.html">BOOST_MPL_LIMIT_METAFUNCTION_ARITY</a>
|
||||
parameters.</p>
|
||||
<p>On deficient compilers not capable of performing the detection,
|
||||
<tt class="literal"><span class="pre">trait<x>::value</span></tt> always returns a fallback value <tt class="literal"><span class="pre">default_</span></tt>. A
|
||||
boolean configuration macro, <a class="reference internal" href="./cfg-no-has-xxx-template.html">BOOST_MPL_CFG_NO_HAS_XXX_TEMPLATE</a>, is
|
||||
provided to signal or override the "deficient" status of a particular
|
||||
compiler. [<em>Note:</em> The fallback value can also be provided at the
|
||||
point of the metafunction invocation; see the <cite>Expression semantics</cite>
|
||||
section for details — <em>end note</em>]</p>
|
||||
</div>
|
||||
<div class="section" id="id1324">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/has_xxx.hpp" class="header">boost/mpl/has_xxx.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="id1325">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="15%" />
|
||||
<col width="32%" />
|
||||
<col width="53%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">trait</span></tt></td>
|
||||
<td>A legal identifier token</td>
|
||||
<td>A name of the metafunction to be generated.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre">name</span></tt></td>
|
||||
<td>A legal identifier token</td>
|
||||
<td>A name of the member being detected.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre">default_</span></tt></td>
|
||||
<td>An boolean constant</td>
|
||||
<td>A fallback value for the deficient compilers.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="id1326">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For any legal C++ identifiers <tt class="literal"><span class="pre">trait</span></tt> and <tt class="literal"><span class="pre">name</span></tt>, boolean constant
|
||||
expression <tt class="literal"><span class="pre">c1</span></tt>, boolean <a class="reference internal" href="./integral-constant.html">Integral Constant</a> <tt class="literal"><span class="pre">c2</span></tt>, and arbitrary
|
||||
type <tt class="literal"><span class="pre">x</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
<a href="./has-xxx-template-named-def.html" class="identifier">BOOST_MPL_HAS_XXX_TEMPLATE_NAMED_DEF</a>(trait, name, c1)
|
||||
</pre>
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body"><p class="first">Appears at namespace scope.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first">None.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Expands into an equivalent of the following class template
|
||||
definition</p>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
typename X
|
||||
, typename fallback = boost::mpl::<a href="./bool.html" class="identifier">bool_</a><c1>
|
||||
>
|
||||
struct trait
|
||||
{
|
||||
// <em>unspecified</em>
|
||||
// ...
|
||||
};
|
||||
</pre>
|
||||
<p>where <tt class="literal"><span class="pre">trait</span></tt> is a boolean <a class="reference internal" href="./metafunction.html">Metafunction</a> with the following
|
||||
semantics:</p>
|
||||
<pre class="literal-block">
|
||||
typedef trait<x>::type r;
|
||||
</pre>
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference internal" href="./integral-constant.html">Integral Constant</a>.</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body">If <a class="reference internal" href="./cfg-no-has-xxx-template.html">BOOST_MPL_CFG_NO_HAS_XXX_TEMPLATE</a> is defined, <tt class="literal"><span class="pre">r::value</span>
|
||||
<span class="pre">==</span> <span class="pre">c1</span></tt>; otherwise, <tt class="literal"><span class="pre">r::value</span> <span class="pre">==</span> <span class="pre">true</span></tt> if and only if <tt class="literal"><span class="pre">x</span></tt>
|
||||
is a class type that has a nested template member <tt class="literal"><span class="pre">x::template</span>
|
||||
<span class="pre">name</span></tt> with no more than <a class="reference internal" href="./limit-metafunction-arity.html">BOOST_MPL_LIMIT_METAFUNCTION_ARITY</a>.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<pre class="literal-block">
|
||||
typedef trait< x, c2 >::type r;
|
||||
</pre>
|
||||
<table class="last docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><a class="reference internal" href="./integral-constant.html">Integral Constant</a>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">If <a class="reference internal" href="./cfg-no-has-xxx-template.html">BOOST_MPL_CFG_NO_HAS_XXX_TEMPLATE</a> is defined, <tt class="literal"><span class="pre">r::value</span>
|
||||
<span class="pre">==</span> <span class="pre">c2::value</span></tt>; otherwise, equivalent to</p>
|
||||
<pre class="last literal-block">
|
||||
typedef trait<x>::type r;
|
||||
</pre>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="id1327">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
<a href="./has-xxx-template-named-def.html" class="identifier">BOOST_MPL_HAS_XXX_TEMPLATE_NAMED_DEF</a>(
|
||||
has_xxx, xxx, false
|
||||
)
|
||||
|
||||
struct test1 {};
|
||||
struct test2 { void xxx(); };
|
||||
struct test3 { int xxx; };
|
||||
struct test4 { static int xxx(); };
|
||||
struct test5 { typedef int xxx; };
|
||||
struct test6 { struct xxx; };
|
||||
struct test7 { typedef void (*xxx)(); };
|
||||
struct test8 { typedef void (xxx)(); };
|
||||
struct test9 { template< class T > struct xxx {}; };
|
||||
|
||||
<a href="./assert-not.html" class="identifier">BOOST_MPL_ASSERT_NOT</a>(( has_xxx<test1> ));
|
||||
<a href="./assert-not.html" class="identifier">BOOST_MPL_ASSERT_NOT</a>(( has_xxx<test2> ));
|
||||
<a href="./assert-not.html" class="identifier">BOOST_MPL_ASSERT_NOT</a>(( has_xxx<test3> ));
|
||||
<a href="./assert-not.html" class="identifier">BOOST_MPL_ASSERT_NOT</a>(( has_xxx<test4> ));
|
||||
<a href="./assert-not.html" class="identifier">BOOST_MPL_ASSERT_NOT</a>(( has_xxx<test5> ));
|
||||
<a href="./assert-not.html" class="identifier">BOOST_MPL_ASSERT_NOT</a>(( has_xxx<test6> ));
|
||||
<a href="./assert-not.html" class="identifier">BOOST_MPL_ASSERT_NOT</a>(( has_xxx<test7> ));
|
||||
<a href="./assert-not.html" class="identifier">BOOST_MPL_ASSERT_NOT</a>(( has_xxx<test8> ));
|
||||
|
||||
#if !defined(<a href="./cfg-no-has-xxx-template.html" class="identifier">BOOST_MPL_CFG_NO_HAS_XXX_TEMPLATE</a>)
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( has_xxx<test9> ));
|
||||
#endif
|
||||
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( has_xxx<test9, <a href="./bool.html" class="identifier">true_</a>> ));
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="id1328">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference internal" href="./macros.html">Macros</a>, <a class="reference internal" href="./has-xxx-template-def.html">BOOST_MPL_HAS_XXX_TEMPLATE_DEF</a>,
|
||||
<a class="reference internal" href="./cfg-no-has-xxx-template.html">BOOST_MPL_CFG_NO_HAS_XXX_TEMPLATE</a>, <a class="reference internal" href="./limit-metafunction-arity.html">BOOST_MPL_LIMIT_METAFUNCTION_ARITY</a></p>
|
||||
<!-- Macros/Introspection//BOOST_MPL_HAS_XXX_TRAIT_DEF -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./has-xxx-template-def.html" class="navigation-link">Prev</a> <a href="./has-xxx-trait-def.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./has-xxx-template-def.html" class="navigation-link">Back</a> <a href="./has-xxx-trait-def.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./introspection.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td><div class="copyright-footer"></div></td></tr></table></body>
|
||||
</html>
|
||||
@@ -1,22 +1,19 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: BOOST_MPL_HAS_XXX_TRAIT_DEF</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
<body class="docframe refmanual">
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./introspection.html" class="navigation-link">Prev</a> <a href="./has-xxx-trait-named-def.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group">Back <a href="./has-xxx-trait-named-def.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./introspection.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./has-xxx-template-named-def.html" class="navigation-link">Prev</a> <a href="./has-xxx-trait-named-def.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./has-xxx-template-named-def.html" class="navigation-link">Back</a> <a href="./has-xxx-trait-named-def.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./introspection.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./macros.html" class="navigation-link">Macros</a> / <a href="./introspection.html" class="navigation-link">Introspection</a> / <a href="./has-xxx-trait-def.html" class="navigation-link">BOOST_MPL_HAS_XXX_TRAIT_DEF</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="has-xxx-trait-def">
|
||||
<h1><a class="toc-backref" href="./introspection.html#id516" name="has-xxx-trait-def">BOOST_MPL_HAS_XXX_TRAIT_DEF</a></h1>
|
||||
<div class="section" id="introspection-has-synopsis">
|
||||
<div class="section" id="boost-mpl-has-xxx-trait-def">
|
||||
<h1><a class="toc-backref" href="./introspection.html#id1595">BOOST_MPL_HAS_XXX_TRAIT_DEF</a></h1>
|
||||
<div class="section" id="id1329">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
#define <a href="./has-xxx-trait-def.html" class="identifier">BOOST_MPL_HAS_XXX_TRAIT_DEF</a>(name) \
|
||||
@@ -24,36 +21,36 @@
|
||||
/**/
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="introspection-has-description">
|
||||
<div class="section" id="id1330">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Expands into a definition of a boolean unary <a class="reference" href="./metafunction.html">Metafunction</a> <tt class="literal"><span class="pre">has_name</span></tt>
|
||||
<p>Expands into a definition of a boolean unary <a class="reference internal" href="./metafunction.html">Metafunction</a> <tt class="literal"><span class="pre">has_name</span></tt>
|
||||
such that for any type <tt class="literal"><span class="pre">x</span></tt> <tt class="literal"><span class="pre">has_name<x>::value</span> <span class="pre">==</span> <span class="pre">true</span></tt> if and only
|
||||
if <tt class="literal"><span class="pre">x</span></tt> is a class type and has a nested type memeber <tt class="literal"><span class="pre">x::name</span></tt>.</p>
|
||||
<p>On the deficient compilers not capabale of performing the detection,
|
||||
<tt class="literal"><span class="pre">has_name<x>::value</span></tt> always returns <tt class="literal"><span class="pre">false</span></tt>. A boolean configuraion
|
||||
macro, <a class="refentry reference" href="./cfg-no-has-xxx.html"><tt class="refentry literal"><span class="pre">BOOST_MPL_CFG_NO_HAS_XXX</span></tt></a>, is provided to signal or override
|
||||
<p>On the deficient compilers not capabale of performing the detection,
|
||||
<tt class="literal"><span class="pre">has_name<x>::value</span></tt> always returns <tt class="literal"><span class="pre">false</span></tt>. A boolean configuraion
|
||||
macro, <a class="reference internal" href="./cfg-no-has-xxx.html">BOOST_MPL_CFG_NO_HAS_XXX</a>, is provided to signal or override
|
||||
the "deficient" status of a particular compiler.</p>
|
||||
<p>[<em>Note:</em> <a class="refentry reference" href="./has-xxx-trait-def.html"><tt class="refentry literal"><span class="pre">BOOST_MPL_HAS_XXX_TRAIT_DEF</span></tt></a> is a simplified front end to
|
||||
the <a class="refentry reference" href="./has-xxx-trait-named-def.html"><tt class="refentry literal"><span class="pre">BOOST_MPL_HAS_XXX_TRAIT_NAMED_DEF</span></tt></a> introspection macro — <em>end note</em>]</p>
|
||||
<p>[<em>Note:</em> <a class="reference internal" href="./has-xxx-trait-def.html">BOOST_MPL_HAS_XXX_TRAIT_DEF</a> is a simplified front end to
|
||||
the <a class="reference internal" href="./has-xxx-trait-named-def.html">BOOST_MPL_HAS_XXX_TRAIT_NAMED_DEF</a> introspection macro — <em>end note</em>]</p>
|
||||
</div>
|
||||
<div class="section" id="introspection-has-header">
|
||||
<div class="section" id="id1331">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/has_xxx.hpp" class="header">boost/mpl/has_xxx.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="introspection-has-parameters">
|
||||
<div class="section" id="id1332">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="15%" />
|
||||
<col width="32%" />
|
||||
<col width="53%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
@@ -64,19 +61,21 @@ the <a class="refentry reference" href="./has-xxx-trait-named-def.html"><tt clas
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="introspection-has-expression-semantics">
|
||||
<div class="section" id="id1333">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For any legal C++ identifier <tt class="literal"><span class="pre">name</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
<a href="./has-xxx-trait-def.html" class="identifier">BOOST_MPL_HAS_XXX_TRAIT_DEF</a>(name)
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body">Appears at namespace scope.</td>
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body"><p class="first">Appears at namespace scope.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body">None.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first">None.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Equivalent to</p>
|
||||
<pre class="last literal-block">
|
||||
@@ -89,10 +88,10 @@ the <a class="refentry reference" href="./has-xxx-trait-named-def.html"><tt clas
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="introspection-has-example">
|
||||
<div class="section" id="id1334">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
<a href="./has-xxx-trait-def.html" class="identifier">BOOST_MPL_HAS_XXX_TRAIT_DEF</a>(has_xxx)
|
||||
<a href="./has-xxx-trait-def.html" class="identifier">BOOST_MPL_HAS_XXX_TRAIT_DEF</a>(xxx)
|
||||
|
||||
struct test1 {};
|
||||
struct test2 { void xxx(); };
|
||||
@@ -117,21 +116,22 @@ struct test9 { typedef void (xxx)(); };
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( has_xxx<test9> ));
|
||||
#endif
|
||||
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( has_xxx<test6,true_> ));
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( has_xxx<test7,true_> ));
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( has_xxx<test8,true_> ));
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( has_xxx<test9,true_> ));
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( has_xxx<test6,<a href="./bool.html" class="identifier">true_</a>> ));
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( has_xxx<test7,<a href="./bool.html" class="identifier">true_</a>> ));
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( has_xxx<test8,<a href="./bool.html" class="identifier">true_</a>> ));
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( has_xxx<test9,<a href="./bool.html" class="identifier">true_</a>> ));
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="introspection-has-see-also">
|
||||
<div class="section" id="id1335">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./macros.html">Macros</a>, <a class="refentry reference" href="./has-xxx-trait-named-def.html"><tt class="refentry literal"><span class="pre">BOOST_MPL_HAS_XXX_TRAIT_NAMED_DEF</span></tt></a>, <a class="refentry reference" href="./cfg-no-has-xxx.html"><tt class="refentry literal"><span class="pre">BOOST_MPL_CFG_NO_HAS_XXX</span></tt></a></p>
|
||||
<!-- modtime: November 13, 2004 02:52:01 +0000 -->
|
||||
<p><a class="reference internal" href="./macros.html">Macros</a>, <a class="reference internal" href="./has-xxx-trait-named-def.html">BOOST_MPL_HAS_XXX_TRAIT_NAMED_DEF</a>, <a class="reference internal" href="./cfg-no-has-xxx.html">BOOST_MPL_CFG_NO_HAS_XXX</a></p>
|
||||
<!-- Macros/Introspection//BOOST_MPL_HAS_XXX_TRAIT_NAMED_DEF -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./introspection.html" class="navigation-link">Prev</a> <a href="./has-xxx-trait-named-def.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group">Back <a href="./has-xxx-trait-named-def.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./introspection.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./has-xxx-template-named-def.html" class="navigation-link">Prev</a> <a href="./has-xxx-trait-named-def.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./has-xxx-template-named-def.html" class="navigation-link">Back</a> <a href="./has-xxx-trait-named-def.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./introspection.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: BOOST_MPL_HAS_XXX_TRAIT_NAMED_DEF</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -14,9 +11,9 @@
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./has-xxx-trait-def.html" class="navigation-link">Prev</a> <a href="./configuration.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./has-xxx-trait-def.html" class="navigation-link">Back</a> Along</span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./introspection.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./macros.html" class="navigation-link">Macros</a> / <a href="./introspection.html" class="navigation-link">Introspection</a> / <a href="./has-xxx-trait-named-def.html" class="navigation-link">BOOST_MPL_HAS_XXX_TRAIT_NAMED_DEF</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="has-xxx-trait-named-def">
|
||||
<h1><a class="toc-backref" href="./introspection.html#id517" name="has-xxx-trait-named-def">BOOST_MPL_HAS_XXX_TRAIT_NAMED_DEF</a></h1>
|
||||
<div class="section" id="macros-introspection-has-synopsis">
|
||||
<div class="section" id="boost-mpl-has-xxx-trait-named-def">
|
||||
<h1><a class="toc-backref" href="./introspection.html#id1596">BOOST_MPL_HAS_XXX_TRAIT_NAMED_DEF</a></h1>
|
||||
<div class="section" id="id1336">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
#define <a href="./has-xxx-trait-named-def.html" class="identifier">BOOST_MPL_HAS_XXX_TRAIT_NAMED_DEF</a>(trait, name, default_) \
|
||||
@@ -24,37 +21,37 @@
|
||||
/**/
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="macros-introspection-has-description">
|
||||
<div class="section" id="id1337">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Expands into a definition of a boolean unary <a class="reference" href="./metafunction.html">Metafunction</a> <tt class="literal"><span class="pre">trait</span></tt>
|
||||
<p>Expands into a definition of a boolean unary <a class="reference internal" href="./metafunction.html">Metafunction</a> <tt class="literal"><span class="pre">trait</span></tt>
|
||||
such that for any type <tt class="literal"><span class="pre">x</span></tt> <tt class="literal"><span class="pre">trait<x>::value</span> <span class="pre">==</span> <span class="pre">true</span></tt> if and only
|
||||
if <tt class="literal"><span class="pre">x</span></tt> is a class type and has a nested type memeber <tt class="literal"><span class="pre">x::name</span></tt>.</p>
|
||||
<p>On the deficient compilers not capabale of performing the detection,
|
||||
<tt class="literal"><span class="pre">trait<x>::value</span></tt> always returns a fallback value <tt class="literal"><span class="pre">default_</span></tt>.
|
||||
A boolean configuraion macro, <a class="refentry reference" href="./cfg-no-has-xxx.html"><tt class="refentry literal"><span class="pre">BOOST_MPL_CFG_NO_HAS_XXX</span></tt></a>, is provided
|
||||
<p>On the deficient compilers not capabale of performing the detection,
|
||||
<tt class="literal"><span class="pre">trait<x>::value</span></tt> always returns a fallback value <tt class="literal"><span class="pre">default_</span></tt>.
|
||||
A boolean configuraion macro, <a class="reference internal" href="./cfg-no-has-xxx.html">BOOST_MPL_CFG_NO_HAS_XXX</a>, is provided
|
||||
to signal or override the "deficient" status of a particular compiler.
|
||||
[<em>Note:</em> The fallback value call also be provided at the point of the
|
||||
metafunction invocation; see the <cite>Expression semantics</cite> section for
|
||||
[<em>Note:</em> The fallback value can also be provided at the point of the
|
||||
metafunction invocation; see the <cite>Expression semantics</cite> section for
|
||||
details — <em>end note</em>]</p>
|
||||
</div>
|
||||
<div class="section" id="macros-introspection-has-header">
|
||||
<div class="section" id="id1338">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/has_xxx.hpp" class="header">boost/mpl/has_xxx.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="macros-introspection-has-parameters">
|
||||
<div class="section" id="id1339">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="15%" />
|
||||
<col width="32%" />
|
||||
<col width="53%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
@@ -73,20 +70,22 @@ details — <em>end note</em>]</p>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="macros-introspection-has-expression-semantics">
|
||||
<div class="section" id="id1340">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For any legal C++ identifiers <tt class="literal"><span class="pre">trait</span></tt> and <tt class="literal"><span class="pre">name</span></tt>, boolean constant expression <tt class="literal"><span class="pre">c1</span></tt>,
|
||||
boolean <a class="reference" href="./integral-constant.html">Integral Constant</a> <tt class="literal"><span class="pre">c2</span></tt>, and arbitrary type <tt class="literal"><span class="pre">x</span></tt>:</p>
|
||||
<p>For any legal C++ identifiers <tt class="literal"><span class="pre">trait</span></tt> and <tt class="literal"><span class="pre">name</span></tt>, boolean constant expression <tt class="literal"><span class="pre">c1</span></tt>,
|
||||
boolean <a class="reference internal" href="./integral-constant.html">Integral Constant</a> <tt class="literal"><span class="pre">c2</span></tt>, and arbitrary type <tt class="literal"><span class="pre">x</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
<a href="./has-xxx-trait-named-def.html" class="identifier">BOOST_MPL_HAS_XXX_TRAIT_NAMED_DEF</a>(trait, name, c1)
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body">Appears at namespace scope.</td>
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body"><p class="first">Appears at namespace scope.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body">None.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first">None.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Expands into an equivalent of the following class template definition</p>
|
||||
<pre class="literal-block">
|
||||
@@ -97,18 +96,18 @@ struct trait
|
||||
// ...
|
||||
};
|
||||
</pre>
|
||||
<p>where <tt class="literal"><span class="pre">trait</span></tt> is a boolean <a class="reference" href="./metafunction.html">Metafunction</a> with the following semantics:</p>
|
||||
<p>where <tt class="literal"><span class="pre">trait</span></tt> is a boolean <a class="reference internal" href="./metafunction.html">Metafunction</a> with the following semantics:</p>
|
||||
<pre class="literal-block">
|
||||
typedef trait<x>::type r;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference" href="./integral-constant.html">Integral Constant</a>.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference internal" href="./integral-constant.html">Integral Constant</a>.</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body">If <a class="refentry reference" href="./cfg-no-has-xxx.html"><tt class="refentry literal"><span class="pre">BOOST_MPL_CFG_NO_HAS_XXX</span></tt></a> is defined, <tt class="literal"><span class="pre">r::value</span> <span class="pre">==</span> <span class="pre">c1</span></tt>;
|
||||
otherwise, <tt class="literal"><span class="pre">r::value</span> <span class="pre">==</span> <span class="pre">true</span></tt> if and only if <tt class="literal"><span class="pre">x</span></tt> is a class type
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body">If <a class="reference internal" href="./cfg-no-has-xxx.html">BOOST_MPL_CFG_NO_HAS_XXX</a> is defined, <tt class="literal"><span class="pre">r::value</span> <span class="pre">==</span> <span class="pre">c1</span></tt>;
|
||||
otherwise, <tt class="literal"><span class="pre">r::value</span> <span class="pre">==</span> <span class="pre">true</span></tt> if and only if <tt class="literal"><span class="pre">x</span></tt> is a class type
|
||||
that has a nested type memeber <tt class="literal"><span class="pre">x::name</span></tt>.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
@@ -116,13 +115,14 @@ that has a nested type memeber <tt class="literal"><span class="pre">x::name</sp
|
||||
<pre class="literal-block">
|
||||
typedef trait< x,c2 >::type r;
|
||||
</pre>
|
||||
<table class="last field-list" frame="void" rules="none">
|
||||
<table class="last docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference" href="./integral-constant.html">Integral Constant</a>.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><a class="reference internal" href="./integral-constant.html">Integral Constant</a>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">If <a class="refentry reference" href="./cfg-no-has-xxx.html"><tt class="refentry literal"><span class="pre">BOOST_MPL_CFG_NO_HAS_XXX</span></tt></a> is defined, <tt class="literal"><span class="pre">r::value</span> <span class="pre">==</span> <span class="pre">c2::value</span></tt>;
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">If <a class="reference internal" href="./cfg-no-has-xxx.html">BOOST_MPL_CFG_NO_HAS_XXX</a> is defined, <tt class="literal"><span class="pre">r::value</span> <span class="pre">==</span> <span class="pre">c2::value</span></tt>;
|
||||
otherwise, equivalent to</p>
|
||||
<pre class="last literal-block">
|
||||
typedef trait<x>::type r;
|
||||
@@ -136,7 +136,7 @@ typedef trait<x>::type r;
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="macros-introspection-has-example">
|
||||
<div class="section" id="id1341">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
<a href="./has-xxx-trait-named-def.html" class="identifier">BOOST_MPL_HAS_XXX_TRAIT_NAMED_DEF</a>(has_xxx, xxx, false)
|
||||
@@ -164,20 +164,21 @@ struct test9 { typedef void (xxx)(); };
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( has_xxx<test9> ));
|
||||
#endif
|
||||
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( has_xxx<test6,true_> ));
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( has_xxx<test7,true_> ));
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( has_xxx<test8,true_> ));
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( has_xxx<test9,true_> ));
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( has_xxx<test6,<a href="./bool.html" class="identifier">true_</a>> ));
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( has_xxx<test7,<a href="./bool.html" class="identifier">true_</a>> ));
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( has_xxx<test8,<a href="./bool.html" class="identifier">true_</a>> ));
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( has_xxx<test9,<a href="./bool.html" class="identifier">true_</a>> ));
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="macros-introspection-has-see-also">
|
||||
<div class="section" id="id1342">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./macros.html">Macros</a>, <a class="refentry reference" href="./has-xxx-trait-def.html"><tt class="refentry literal"><span class="pre">BOOST_MPL_HAS_XXX_TRAIT_DEF</span></tt></a>, <a class="refentry reference" href="./cfg-no-has-xxx.html"><tt class="refentry literal"><span class="pre">BOOST_MPL_CFG_NO_HAS_XXX</span></tt></a></p>
|
||||
<!-- modtime: November 13, 2004 02:53:15 +0000 -->
|
||||
<p><a class="reference internal" href="./macros.html">Macros</a>, <a class="reference internal" href="./has-xxx-trait-def.html">BOOST_MPL_HAS_XXX_TRAIT_DEF</a>, <a class="reference internal" href="./cfg-no-has-xxx.html">BOOST_MPL_CFG_NO_HAS_XXX</a></p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./has-xxx-trait-def.html" class="navigation-link">Prev</a> <a href="./configuration.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./has-xxx-trait-def.html" class="navigation-link">Back</a> Along</span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./introspection.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+29
-29
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: identity</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,11 +12,11 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./metafunctions.html" class="navigation-link">Metafunctions</a> / <a href="./miscellaneous.html" class="navigation-link">Miscellaneous</a> / <a href="./identity.html" class="navigation-link">identity</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="identity">
|
||||
<h1><a class="toc-backref" href="./miscellaneous.html#id488" name="identity">identity</a></h1>
|
||||
<div class="section" id="identity-synopsis">
|
||||
<h1><a class="toc-backref" href="./miscellaneous.html#id1564">identity</a></h1>
|
||||
<div class="section" id="id1146">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
template<
|
||||
typename X
|
||||
>
|
||||
struct <a href="./identity.html" class="identifier">identity</a>
|
||||
@@ -28,32 +25,32 @@ struct <a href="./identity.html" class="identifier">identity</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="identity-description">
|
||||
<div class="section" id="id1147">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>The <a class="reference" href="http://mathworld.wolfram.com/IdentityFunction.html" target="_top">identity</a> metafunction. Returns <tt class="literal"><span class="pre">X</span></tt> unchanged.</p>
|
||||
<p>The <a class="reference external" href="http://mathworld.wolfram.com/IdentityFunction.html" target="_top">identity</a> metafunction. Returns <tt class="literal"><span class="pre">X</span></tt> unchanged.</p>
|
||||
</div>
|
||||
<div class="section" id="identity-header">
|
||||
<div class="section" id="id1149">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/identity.hpp" class="header">boost/mpl/identity.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="identity-model-of">
|
||||
<div class="section" id="id1150">
|
||||
<h3><a class="subsection-title" href="#model-of" name="model-of">Model of</a></h3>
|
||||
<p><a class="reference" href="./metafunction.html">Metafunction</a></p>
|
||||
<p><a class="reference internal" href="./metafunction.html">Metafunction</a></p>
|
||||
</div>
|
||||
<div class="section" id="identity-parameters">
|
||||
<div class="section" id="id1151">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="22%" />
|
||||
<col width="28%" />
|
||||
<col width="51%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
@@ -64,48 +61,51 @@ struct <a href="./identity.html" class="identifier">identity</a>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="identity-expression-semantics">
|
||||
<div class="section" id="id1152">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For an arbitrary type <tt class="literal"><span class="pre">x</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./identity.html" class="identifier">identity</a><x>::type r;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body">A type.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first">A type.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Equivalent to</p>
|
||||
<pre class="last literal-block">
|
||||
<pre class="literal-block">
|
||||
typedef x r;
|
||||
</pre>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Postcondition:</th><td class="field-body"><tt class="literal"><span class="pre">is_same<r,x>::value</span> <span class="pre">==</span> <span class="pre">true</span></tt>.</td>
|
||||
<tr class="field"><th class="field-name">Postcondition:</th><td class="field-body"><p class="first last"><tt class="literal"><span class="pre">is_same<r,x>::value</span> <span class="pre">==</span> <span class="pre">true</span></tt>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="identity-example">
|
||||
<div class="section" id="id1153">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./apply.html" class="identifier">apply</a>< <a href="./identity.html" class="identifier">identity</a><_1>, char >::type t1;
|
||||
typedef <a href="./apply.html" class="identifier">apply</a>< <a href="./identity.html" class="identifier">identity</a><_2>, char,int >::type t2;
|
||||
typedef <a href="./apply.html" class="identifier">apply</a>< <a href="./identity.html" class="identifier">identity</a><<a href="./placeholders.html" class="identifier">_1</a>>, char >::type t1;
|
||||
typedef <a href="./apply.html" class="identifier">apply</a>< <a href="./identity.html" class="identifier">identity</a><<a href="./placeholders.html" class="identifier">_2</a>>, char,int >::type t2;
|
||||
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( is_same< t1, char > ));
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( is_same< t2, int > ));
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="identity-see-also">
|
||||
<div class="section" id="id1154">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./metafunctions.html">Metafunctions</a>, <a class="reference" href="./placeholders.html">Placeholders</a>, <a class="reference" href="./trivial.html">Trivial Metafunctions</a>, <a class="refentry reference" href="./always.html"><tt class="refentry literal"><span class="pre">always</span></tt></a>, <a class="refentry reference" href="./apply.html"><tt class="refentry literal"><span class="pre">apply</span></tt></a></p>
|
||||
<!-- modtime: November 10, 2004 04:40:31 +0000 -->
|
||||
<p><a class="reference internal" href="./metafunctions.html">Metafunctions</a>, <a class="reference internal" href="./placeholders.html">Placeholders</a>, <a class="reference internal" href="./trivial.html#label-metafunctions-trivial">Trivial Metafunctions</a>, <a class="reference internal" href="./always.html">always</a>, <a class="reference internal" href="./apply.html">apply</a></p>
|
||||
<!-- Metafunctions/Miscellaneous//always |20 -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./miscellaneous.html" class="navigation-link">Prev</a> <a href="./always.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group">Back <a href="./always.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./miscellaneous.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+35
-22
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: if_c</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,11 +12,11 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./metafunctions.html" class="navigation-link">Metafunctions</a> / <a href="./type-selection.html" class="navigation-link">Type Selection</a> / <a href="./if-c.html" class="navigation-link">if_c</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="if-c">
|
||||
<h1><a class="toc-backref" href="./type-selection.html#id447" name="if-c">if_c</a></h1>
|
||||
<div class="section" id="type-if-synopsis">
|
||||
<h1><a class="toc-backref" href="./type-selection.html#id1521">if_c</a></h1>
|
||||
<div class="section" id="id866">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
template<
|
||||
bool c
|
||||
, typename T1
|
||||
, typename T2
|
||||
@@ -30,30 +27,30 @@ struct <a href="./if-c.html" class="identifier">if_c</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="type-if-description">
|
||||
<div class="section" id="id867">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Returns one of its two arguments, <tt class="literal"><span class="pre">T1</span></tt> or <tt class="literal"><span class="pre">T2</span></tt>, depending on the value of
|
||||
integral constant <tt class="literal"><span class="pre">c</span></tt>. <tt class="literal"><span class="pre"><a href="./if-c.html" class="identifier">if_c</a><c,t1,t2>::type</span></tt> is a shorcut notation for
|
||||
integral constant <tt class="literal"><span class="pre">c</span></tt>. <tt class="literal"><span class="pre"><a href="./if-c.html" class="identifier">if_c</a><c,t1,t2>::type</span></tt> is a shorcut notation for
|
||||
<tt class="literal"><span class="pre"><a href="./if.html" class="identifier">if_</a><</span> <span class="pre"><a href="./bool.html" class="identifier">bool_</a><c>,t1,t2</span> <span class="pre">>::type</span></tt>.</p>
|
||||
</div>
|
||||
<div class="section" id="type-if-header">
|
||||
<div class="section" id="id868">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/if.hpp" class="header">boost/mpl/if.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="type-if-parameters">
|
||||
<div class="section" id="id869">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="15%" />
|
||||
<col width="36%" />
|
||||
<col width="48%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
@@ -68,13 +65,13 @@ integral constant <tt class="literal"><span class="pre">c</span></tt>. <tt class
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="type-if-expression-semantics">
|
||||
<div class="section" id="id870">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For any integral constant <tt class="literal"><span class="pre">c</span></tt> and arbitrary types <tt class="literal"><span class="pre">t1</span></tt>, <tt class="literal"><span class="pre">t2</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./if-c.html" class="identifier">if_c</a><c,t1,t2>::type t;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
@@ -85,7 +82,7 @@ typedef <a href="./if-c.html" class="identifier">if_c</a><c,t1,t2>::type t
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="type-if-example">
|
||||
<div class="section" id="id871">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./if-c.html" class="identifier">if_c</a><true,char,long>::type t1;
|
||||
@@ -94,16 +91,32 @@ typedef <a href="./if-c.html" class="identifier">if_c</a><false,char,long>
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( is_same<t1, char> ));
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( is_same<t2, long> ));
|
||||
</pre>
|
||||
<pre class="literal-block">
|
||||
// allocates space for an object of class T on heap or "inplace"
|
||||
// depending on its <a href="./size.html" class="identifier">size</a>
|
||||
template< typename T > struct lightweight
|
||||
{
|
||||
// ...
|
||||
typedef typename <a href="./if-c.html" class="identifier">if_c</a><
|
||||
sizeof(T) <= sizeof(T*)
|
||||
, inplace_storage<T>
|
||||
, heap_storage<T>
|
||||
>::type impl_t;
|
||||
|
||||
impl_t impl;
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="type-if-see-also">
|
||||
<div class="section" id="id872">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./metafunctions.html">Metafunctions</a>, <a class="reference" href="./integral-constant.html">Integral Constant</a>, <a class="refentry reference" href="./if.html"><tt class="refentry literal"><span class="pre">if_</span></tt></a>, <a class="refentry reference" href="./eval-if.html"><tt class="refentry literal"><span class="pre">eval_if</span></tt></a>, <a class="refentry reference" href="./bool.html"><tt class="refentry literal"><span class="pre">bool_</span></tt></a></p>
|
||||
<!-- modtime: November 10, 2004 04:40:22 +0000 -->
|
||||
<p><a class="reference internal" href="./metafunctions.html">Metafunctions</a>, <a class="reference internal" href="./integral-constant.html">Integral Constant</a>, <a class="reference internal" href="./if.html">if_</a>, <a class="reference internal" href="./eval-if.html">eval_if</a>, <a class="reference internal" href="./bool.html">bool_</a></p>
|
||||
<!-- Metafunctions/Type Selection//eval_if |30 -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./if.html" class="navigation-link">Prev</a> <a href="./eval-if.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./if.html" class="navigation-link">Back</a> <a href="./eval-if.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./type-selection.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+39
-26
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: if_</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,11 +12,11 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./metafunctions.html" class="navigation-link">Metafunctions</a> / <a href="./type-selection.html" class="navigation-link">Type Selection</a> / <a href="./if.html" class="navigation-link">if_</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="if">
|
||||
<h1><a class="toc-backref" href="./type-selection.html#id446" name="if">if_</a></h1>
|
||||
<div class="section" id="if-synopsis">
|
||||
<h1><a class="toc-backref" href="./type-selection.html#id1520">if_</a></h1>
|
||||
<div class="section" id="id859">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
template<
|
||||
typename C
|
||||
, typename T1
|
||||
, typename T2
|
||||
@@ -30,33 +27,33 @@ struct <a href="./if.html" class="identifier">if_</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="if-description">
|
||||
<div class="section" id="id860">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Returns one of its two arguments, <tt class="literal"><span class="pre">T1</span></tt> or <tt class="literal"><span class="pre">T2</span></tt>, depending on the value <tt class="literal"><span class="pre">C</span></tt>.</p>
|
||||
</div>
|
||||
<div class="section" id="if-header">
|
||||
<div class="section" id="id861">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/if.hpp" class="header">boost/mpl/if.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="if-parameters">
|
||||
<div class="section" id="id862">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="15%" />
|
||||
<col width="36%" />
|
||||
<col width="48%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">C</span></tt></td>
|
||||
<td><a class="reference" href="./integral-constant.html">Integral Constant</a></td>
|
||||
<td><a class="reference internal" href="./integral-constant.html">Integral Constant</a></td>
|
||||
<td>A selection condition.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre">T1</span></tt>, <tt class="literal"><span class="pre">T2</span></tt></td>
|
||||
@@ -66,43 +63,59 @@ struct <a href="./if.html" class="identifier">if_</a>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="if-expression-semantics">
|
||||
<div class="section" id="id863">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For any <a class="reference" href="./integral-constant.html">Integral Constant</a> <tt class="literal"><span class="pre">c</span></tt> and arbitrary types <tt class="literal"><span class="pre">t1</span></tt>, <tt class="literal"><span class="pre">t2</span></tt>:</p>
|
||||
<p>For any <a class="reference internal" href="./integral-constant.html">Integral Constant</a> <tt class="literal"><span class="pre">c</span></tt> and arbitrary types <tt class="literal"><span class="pre">t1</span></tt>, <tt class="literal"><span class="pre">t2</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./if.html" class="identifier">if_</a><c,t1,t2>::type t;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body">Any type.</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body">If <tt class="literal"><span class="pre">c::value</span> <span class="pre">==</span> <span class="pre">true</span></tt>, <tt class="literal"><span class="pre">t</span></tt> is identical to <tt class="literal"><span class="pre">t1</span></tt>; otherwise <tt class="literal"><span class="pre">t</span></tt> is
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body">If <tt class="literal"><span class="pre">c::value</span> <span class="pre">==</span> <span class="pre">true</span></tt>, <tt class="literal"><span class="pre">t</span></tt> is identical to <tt class="literal"><span class="pre">t1</span></tt>; otherwise <tt class="literal"><span class="pre">t</span></tt> is
|
||||
identical to <tt class="literal"><span class="pre">t2</span></tt>.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="if-example">
|
||||
<div class="section" id="id864">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./if.html" class="identifier">if_</a><true_,char,long>::type t1;
|
||||
typedef <a href="./if.html" class="identifier">if_</a><false_,char,long>::type t2;
|
||||
typedef <a href="./if.html" class="identifier">if_</a><<a href="./bool.html" class="identifier">true_</a>,char,long>::type t1;
|
||||
typedef <a href="./if.html" class="identifier">if_</a><<a href="./bool.html" class="identifier">false_</a>,char,long>::type t2;
|
||||
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( is_same<t1, char> ));
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( is_same<t2, long> ));
|
||||
</pre>
|
||||
<pre class="literal-block">
|
||||
// allocates space for an object of class T on heap or "inplace"
|
||||
// depending on its <a href="./size.html" class="identifier">size</a>
|
||||
template< typename T > struct lightweight
|
||||
{
|
||||
// ...
|
||||
typedef typename <a href="./if.html" class="identifier">if_</a><
|
||||
<a href="./less-equal.html" class="identifier">less_equal</a>< <a href="./sizeof.html" class="identifier">sizeof_</a><T>, <a href="./sizeof.html" class="identifier">sizeof_</a><T*> >
|
||||
, inplace_storage<T>
|
||||
, heap_storage<T>
|
||||
>::type impl_t;
|
||||
|
||||
impl_t impl;
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="if-see-also">
|
||||
<div class="section" id="id865">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./metafunctions.html">Metafunctions</a>, <a class="reference" href="./integral-constant.html">Integral Constant</a>, <a class="refentry reference" href="./if-c.html"><tt class="refentry literal"><span class="pre">if_c</span></tt></a>, <a class="refentry reference" href="./eval-if.html"><tt class="refentry literal"><span class="pre">eval_if</span></tt></a></p>
|
||||
<!-- modtime: November 10, 2004 04:40:27 +0000 -->
|
||||
<p><a class="reference internal" href="./metafunctions.html">Metafunctions</a>, <a class="reference internal" href="./integral-constant.html">Integral Constant</a>, <a class="reference internal" href="./if-c.html">if_c</a>, <a class="reference internal" href="./eval-if.html">eval_if</a></p>
|
||||
<!-- Metafunctions/Type Selection//if_c |20 -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./type-selection.html" class="navigation-link">Prev</a> <a href="./if-c.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group">Back <a href="./if-c.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./type-selection.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: inherit_linearly</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,8 +12,8 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./metafunctions.html" class="navigation-link">Metafunctions</a> / <a href="./miscellaneous.html" class="navigation-link">Miscellaneous</a> / <a href="./inherit-linearly.html" class="navigation-link">inherit_linearly</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="inherit-linearly">
|
||||
<h1><a class="toc-backref" href="./miscellaneous.html#id491" name="inherit-linearly">inherit_linearly</a></h1>
|
||||
<div class="section" id="miscellaneous-inherit-synopsis">
|
||||
<h1><a class="toc-backref" href="./miscellaneous.html#id1567">inherit_linearly</a></h1>
|
||||
<div class="section" id="id1172">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
@@ -30,44 +27,44 @@ struct <a href="./inherit-linearly.html" class="identifier">inherit_linearly</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="miscellaneous-inherit-description">
|
||||
<div class="section" id="id1173">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>A convenience wrapper for <tt class="literal"><span class="pre"><a href="./fold.html" class="identifier">fold</a></span></tt> to use in the context of sequence-driven
|
||||
class composition. Returns the result the successive application of binary
|
||||
<tt class="literal"><span class="pre">Node</span></tt> to the result of the previous <tt class="literal"><span class="pre">Node</span></tt> invocation (<tt class="literal"><span class="pre">Root</span></tt> if it's
|
||||
the first call) and every type in the <a class="reference" href="./forward-sequence.html">Forward Sequence</a> <tt class="literal"><span class="pre">Types</span></tt> in order.</p>
|
||||
<tt class="literal"><span class="pre">Node</span></tt> to the result of the previous <tt class="literal"><span class="pre">Node</span></tt> invocation (<tt class="literal"><span class="pre">Root</span></tt> if it's
|
||||
the first call) and every type in the <a class="reference internal" href="./forward-sequence.html">Forward Sequence</a> <tt class="literal"><span class="pre">Types</span></tt> in order.</p>
|
||||
</div>
|
||||
<div class="section" id="miscellaneous-inherit-header">
|
||||
<div class="section" id="id1174">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/inherit_linearly.hpp" class="header">boost/mpl/inherit_linearly.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="miscellaneous-inherit-model-of">
|
||||
<div class="section" id="id1175">
|
||||
<h3><a class="subsection-title" href="#model-of" name="model-of">Model of</a></h3>
|
||||
<p><a class="reference" href="./metafunction.html">Metafunction</a></p>
|
||||
<p><a class="reference internal" href="./metafunction.html">Metafunction</a></p>
|
||||
</div>
|
||||
<div class="section" id="miscellaneous-inherit-parameters">
|
||||
<div class="section" id="id1176">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="15%" />
|
||||
<col width="32%" />
|
||||
<col width="53%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">Types</span></tt></td>
|
||||
<td><a class="reference" href="./forward-sequence.html">Forward Sequence</a></td>
|
||||
<td><a class="reference internal" href="./forward-sequence.html">Forward Sequence</a></td>
|
||||
<td>Types to inherit from.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre">Node</span></tt></td>
|
||||
<td>Binary <a class="reference" href="./lambda-expression.html">Lambda Expression</a></td>
|
||||
<td>Binary <a class="reference internal" href="./lambda-expression.html">Lambda Expression</a></td>
|
||||
<td>A derivation metafunction.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre">Root</span></tt></td>
|
||||
@@ -78,33 +75,34 @@ hierarchy.</td>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="miscellaneous-inherit-expression-semantics">
|
||||
<div class="section" id="id1177">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For any <a class="reference" href="./forward-sequence.html">Forward Sequence</a> <tt class="literal"><span class="pre">types</span></tt>, binary <a class="reference" href="./lambda-expression.html">Lambda Expression</a> <tt class="literal"><span class="pre">node</span></tt>, and arbitrary
|
||||
<p>For any <a class="reference internal" href="./forward-sequence.html">Forward Sequence</a> <tt class="literal"><span class="pre">types</span></tt>, binary <a class="reference internal" href="./lambda-expression.html">Lambda Expression</a> <tt class="literal"><span class="pre">node</span></tt>, and arbitrary
|
||||
class type <tt class="literal"><span class="pre">root</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./inherit-linearly.html" class="identifier">inherit_linearly</a><types,node,root>::type r;
|
||||
typedef <a href="./inherit-linearly.html" class="identifier">inherit_linearly</a><types,node,root>::type r;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body">A class type.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first">A class type.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Equivalent to</p>
|
||||
<pre class="last literal-block">
|
||||
typedef <a href="./fold.html" class="identifier">fold</a><types,root,node>::type r;
|
||||
typedef <a href="./fold.html" class="identifier">fold</a><types,root,node>::type r;
|
||||
</pre>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="miscellaneous-inherit-complexity">
|
||||
<div class="section" id="id1178">
|
||||
<h3><a class="subsection-title" href="#complexity" name="complexity">Complexity</a></h3>
|
||||
<p>Linear. Exactly <tt class="literal"><span class="pre"><a href="./size.html" class="identifier">size</a><types>::value</span></tt> applications of <tt class="literal"><span class="pre">node</span></tt>.</p>
|
||||
</div>
|
||||
<div class="section" id="miscellaneous-inherit-example">
|
||||
<div class="section" id="id1179">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
template< typename T > struct tuple_field
|
||||
@@ -121,14 +119,14 @@ T& field(tuple_field<T>& t)
|
||||
|
||||
typedef <a href="./inherit-linearly.html" class="identifier">inherit_linearly</a><
|
||||
<a href="./vector.html" class="identifier">vector</a><int,char const*,bool>
|
||||
, <a href="./inherit.html" class="identifier">inherit</a>< _1, tuple_field<_2> >
|
||||
, <a href="./inherit.html" class="identifier">inherit</a>< <a href="./placeholders.html" class="identifier">_1</a>, tuple_field<<a href="./placeholders.html" class="identifier">_2</a>> >
|
||||
>::type tuple;
|
||||
|
||||
|
||||
int main()
|
||||
{
|
||||
tuple t;
|
||||
|
||||
|
||||
field<int>(t) = -1;
|
||||
field<char const*>(t) = "text";
|
||||
field<bool>(t) = false;
|
||||
@@ -141,15 +139,16 @@ int main()
|
||||
}
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="miscellaneous-inherit-see-also">
|
||||
<div class="section" id="id1180">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./metafunctions.html">Metafunctions</a>, <a class="reference" href="./algorithms.html">Algorithms</a>, <a class="refentry reference" href="./inherit.html"><tt class="refentry literal"><span class="pre">inherit</span></tt></a>, <a class="refentry reference" href="./empty-base.html"><tt class="refentry literal"><span class="pre">empty_base</span></tt></a>, <a class="refentry reference" href="./fold.html"><tt class="refentry literal"><span class="pre">fold</span></tt></a>, <a class="refentry reference" href="./reverse-fold.html"><tt class="refentry literal"><span class="pre">reverse_fold</span></tt></a></p>
|
||||
<!-- modtime: November 10, 2004 04:40:14 +0000 -->
|
||||
<p><a class="reference internal" href="./metafunctions.html">Metafunctions</a>, <a class="reference internal" href="./algorithms.html">Algorithms</a>, <a class="reference internal" href="./inherit.html">inherit</a>, <a class="reference internal" href="./empty-base.html">empty_base</a>, <a class="reference internal" href="./fold.html">fold</a>, <a class="reference internal" href="./reverse-fold.html">reverse_fold</a></p>
|
||||
<!-- Metafunctions/Miscellaneous//numeric_cast |50 -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./inherit.html" class="navigation-link">Prev</a> <a href="./numeric-cast.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./inherit.html" class="navigation-link">Back</a> <a href="./numeric-cast.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./miscellaneous.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+42
-38
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: inherit</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,8 +12,8 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./metafunctions.html" class="navigation-link">Metafunctions</a> / <a href="./miscellaneous.html" class="navigation-link">Miscellaneous</a> / <a href="./inherit.html" class="navigation-link">inherit</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="inherit">
|
||||
<h1><a class="toc-backref" href="./miscellaneous.html#id490" name="inherit">inherit</a></h1>
|
||||
<div class="section" id="inherit-synopsis">
|
||||
<h1><a class="toc-backref" href="./miscellaneous.html#id1566">inherit</a></h1>
|
||||
<div class="section" id="id1163">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
@@ -49,35 +46,35 @@ struct <a href="./inherit.html" class="identifier">inherit</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="inherit-description">
|
||||
<div class="section" id="id1164">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>Returns an unspecified class type publically derived from <tt class="literal"><span class="pre">T1</span></tt>, <tt class="literal"><span class="pre">T2</span></tt>,... <tt class="literal"><span class="pre">Tn</span></tt>.
|
||||
Guarantees that derivation from <a class="refentry reference" href="./empty-base.html"><tt class="refentry literal"><span class="pre">empty_base</span></tt></a> is always a no-op,
|
||||
regardless of the position and number of <a class="refentry reference" href="./empty-base.html"><tt class="refentry literal"><span class="pre">empty_base</span></tt></a> classes in
|
||||
Guarantees that derivation from <a class="reference internal" href="./empty-base.html">empty_base</a> is always a no-op,
|
||||
regardless of the position and number of <a class="reference internal" href="./empty-base.html">empty_base</a> classes in
|
||||
<tt class="literal"><span class="pre">T1</span></tt>, <tt class="literal"><span class="pre">T2</span></tt>,... <tt class="literal"><span class="pre">Tn</span></tt>.</p>
|
||||
</div>
|
||||
<div class="section" id="inherit-header">
|
||||
<div class="section" id="id1165">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/inherit.hpp" class="header">boost/mpl/inherit.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="inherit-model-of">
|
||||
<div class="section" id="id1166">
|
||||
<h3><a class="subsection-title" href="#model-of" name="model-of">Model of</a></h3>
|
||||
<p><a class="reference" href="./metafunction.html">Metafunction</a></p>
|
||||
<p><a class="reference internal" href="./metafunction.html">Metafunction</a></p>
|
||||
</div>
|
||||
<div class="section" id="inherit-parameters">
|
||||
<div class="section" id="id1167">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="22%" />
|
||||
<col width="28%" />
|
||||
<col width="51%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
@@ -88,19 +85,21 @@ regardless of the position and number of <a class="refentry reference" href="./e
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="inherit-expression-semantics">
|
||||
<div class="section" id="id1168">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For artibrary class types <em>t</em><sub>1</sub>,<em>t</em><sub>2</sub>,... <em>t</em><sub>n</sub>:</p>
|
||||
<pre class="literal-block">
|
||||
typedef inherit2<t1,t2>::type r;
|
||||
typedef inherit2<t1,t2>::type r;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body">A class type.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first">A class type.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body"><tt class="literal"><span class="pre">t1</span></tt> and <tt class="literal"><span class="pre">t2</span></tt> are complete types.</td>
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body"><p class="first"><tt class="literal"><span class="pre">t1</span></tt> and <tt class="literal"><span class="pre">t2</span></tt> are complete types.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">If both <tt class="literal"><span class="pre">t1</span></tt> and <tt class="literal"><span class="pre">t2</span></tt> are identical to <tt class="literal"><span class="pre"><a href="./empty-base.html" class="identifier">empty_base</a></span></tt>, equivalent to</p>
|
||||
<pre class="literal-block">
|
||||
@@ -124,15 +123,17 @@ struct r : t1, t2 {};
|
||||
</table>
|
||||
<!-- ........................................................................... -->
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./inherit.html" class="identifier">inherit</a><em>n</em><t1,t2,<em>...</em>t<em>n</em>>::type r;
|
||||
typedef <a href="./inherit.html" class="identifier">inherit</a><em>n</em><t1,t2,<em>...</em>t<em>n</em>>::type r;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body">A class type.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first">A class type.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body"><em>t</em><sub>1</sub>,<em>t</em><sub>2</sub>,... <em>t</em><sub>n</sub> are complete types.</td>
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body"><p class="first"><em>t</em><sub>1</sub>,<em>t</em><sub>2</sub>,... <em>t</em><sub>n</sub> are complete types.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Equivalent to</p>
|
||||
<pre class="last literal-block">
|
||||
@@ -150,30 +151,32 @@ struct r
|
||||
</table>
|
||||
<!-- ........................................................................... -->
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./inherit.html" class="identifier">inherit</a><t1,t2,<em>...</em>t<em>n</em>>::type r;
|
||||
typedef <a href="./inherit.html" class="identifier">inherit</a><t1,t2,<em>...</em>t<em>n</em>>::type r;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body"><em>t</em><sub>1</sub>,<em>t</em><sub>2</sub>,... <em>t</em><sub>n</sub> are complete types.</td>
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body"><p class="first"><em>t</em><sub>1</sub>,<em>t</em><sub>2</sub>,... <em>t</em><sub>n</sub> are complete types.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body">A class type.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first">A class type.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first">Equivalent to</p>
|
||||
<pre class="last literal-block">
|
||||
typedef <a href="./inherit.html" class="identifier">inherit</a><em>n</em><t1,t2,<em>...</em>t<em>n</em>>::type r;
|
||||
typedef <a href="./inherit.html" class="identifier">inherit</a><em>n</em><t1,t2,<em>...</em>t<em>n</em>>::type r;
|
||||
</pre>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="inherit-complexity">
|
||||
<div class="section" id="id1169">
|
||||
<h3><a class="subsection-title" href="#complexity" name="complexity">Complexity</a></h3>
|
||||
<p>Amortized constant time.</p>
|
||||
</div>
|
||||
<div class="section" id="inherit-example">
|
||||
<div class="section" id="id1170">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
struct udt1 { int n; };
|
||||
@@ -187,22 +190,23 @@ typedef <a href="./inherit.html" class="identifier">inherit</a><<a href="./em
|
||||
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( is_base_and_derived< udt1, r1> ));
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( is_base_and_derived< udt2, r1> ));
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( is_same< r2, udt1> ));
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( is_same< r2, udt1> ));
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( is_same< r3, udt1 > ));
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( is_base_and_derived< udt1, r4 > ));
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( is_base_and_derived< udt2, r4 > ));
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( is_same< r5, <a href="./empty-base.html" class="identifier">empty_base</a> > ));
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="inherit-see-also">
|
||||
<div class="section" id="id1171">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./metafunctions.html">Metafunctions</a>, <a class="refentry reference" href="./empty-base.html"><tt class="refentry literal"><span class="pre">empty_base</span></tt></a>, <a class="refentry reference" href="./inherit-linearly.html"><tt class="refentry literal"><span class="pre">inherit_linearly</span></tt></a>, <a class="refentry reference" href="./identity.html"><tt class="refentry literal"><span class="pre">identity</span></tt></a></p>
|
||||
<!-- modtime: November 10, 2004 04:40:17 +0000 -->
|
||||
<p><a class="reference internal" href="./metafunctions.html">Metafunctions</a>, <a class="reference internal" href="./empty-base.html">empty_base</a>, <a class="reference internal" href="./inherit-linearly.html">inherit_linearly</a>, <a class="reference internal" href="./identity.html">identity</a></p>
|
||||
<!-- Metafunctions/Miscellaneous//inherit_linearly |40 -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./always.html" class="navigation-link">Prev</a> <a href="./inherit-linearly.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./always.html" class="navigation-link">Back</a> <a href="./inherit-linearly.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./miscellaneous.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: insert_range</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,8 +12,8 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./sequences.html" class="navigation-link">Sequences</a> / <a href="./intrinsic-metafunctions.html" class="navigation-link">Intrinsic Metafunctions</a> / <a href="./insert-range.html" class="navigation-link">insert_range</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="insert-range">
|
||||
<h1><a class="toc-backref" href="./intrinsic-metafunctions.html#id365" name="insert-range">insert_range</a></h1>
|
||||
<div class="section" id="intrinsic-insert-synopsis">
|
||||
<h1><a class="toc-backref" href="./intrinsic-metafunctions.html#id1437">insert_range</a></h1>
|
||||
<div class="section" id="id283">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
@@ -30,86 +27,89 @@ struct <a href="./insert-range.html" class="identifier">insert_range</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="intrinsic-insert-description">
|
||||
<div class="section" id="id284">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p><tt class="literal"><span class="pre"><a href="./insert-range.html" class="identifier">insert_range</a></span></tt> performs an insertion of a range of elements at an arbitrary position in
|
||||
<p><tt class="literal"><span class="pre"><a href="./insert-range.html" class="identifier">insert_range</a></span></tt> performs an insertion of a range of elements at an arbitrary position in
|
||||
the sequence.</p>
|
||||
</div>
|
||||
<div class="section" id="intrinsic-insert-header">
|
||||
<div class="section" id="id285">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/insert_range.hpp" class="header">boost/mpl/insert_range.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="intrinsic-insert-model-of">
|
||||
<div class="section" id="id286">
|
||||
<h3><a class="subsection-title" href="#model-of" name="model-of">Model of</a></h3>
|
||||
<p><a class="reference" href="./tag-dispatched.html">Tag Dispatched Metafunction</a></p>
|
||||
<p><a class="reference internal" href="./tag-dispatched-metafunction.html">Tag Dispatched Metafunction</a></p>
|
||||
</div>
|
||||
<div class="section" id="intrinsic-insert-parameters">
|
||||
<div class="section" id="id287">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="15%" />
|
||||
<col width="36%" />
|
||||
<col width="48%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">Sequence</span></tt></td>
|
||||
<td><a class="reference" href="./extensible-sequence.html">Extensible Sequence</a> or
|
||||
<a class="reference" href="./extensible-associative.html">Extensible Associative Sequence</a></td>
|
||||
<td><a class="reference internal" href="./extensible-sequence.html">Extensible Sequence</a> or
|
||||
<a class="reference internal" href="./extensible-associative-sequence.html">Extensible Associative Sequence</a></td>
|
||||
<td>A sequence to insert into.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre">Pos</span></tt></td>
|
||||
<td><a class="reference" href="./forward-iterator.html">Forward Iterator</a></td>
|
||||
<td><a class="reference internal" href="./forward-iterator.html">Forward Iterator</a></td>
|
||||
<td>An iterator in <tt class="literal"><span class="pre">Sequence</span></tt> specifying the
|
||||
insertion position.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre">Range</span></tt></td>
|
||||
<td><a class="reference" href="./forward-sequence.html">Forward Sequence</a></td>
|
||||
<td><a class="reference internal" href="./forward-sequence.html">Forward Sequence</a></td>
|
||||
<td>The range of elements to be inserted.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="intrinsic-insert-expression-semantics">
|
||||
<div class="section" id="id288">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>For any <a class="reference" href="./extensible-sequence.html">Extensible Sequence</a> <tt class="literal"><span class="pre">s</span></tt>, iterator <tt class="literal"><span class="pre">pos</span></tt> in <tt class="literal"><span class="pre">s</span></tt>, and <a class="reference" href="./forward-sequence.html">Forward Sequence</a> <tt class="literal"><span class="pre">range</span></tt>:</p>
|
||||
<p>For any <a class="reference internal" href="./extensible-sequence.html">Extensible Sequence</a> <tt class="literal"><span class="pre">s</span></tt>, iterator <tt class="literal"><span class="pre">pos</span></tt> in <tt class="literal"><span class="pre">s</span></tt>, and <a class="reference internal" href="./forward-sequence.html">Forward Sequence</a> <tt class="literal"><span class="pre">range</span></tt>:</p>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./insert.html" class="identifier">insert</a><s,pos,range>::type r;
|
||||
typedef <a href="./insert.html" class="identifier">insert</a><s,pos,range>::type r;
|
||||
</pre>
|
||||
<table class="field-list" frame="void" rules="none">
|
||||
<table class="docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference" href="./extensible-sequence.html">Extensible Sequence</a>.</td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><a class="reference internal" href="./extensible-sequence.html">Extensible Sequence</a>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body"><tt class="literal"><span class="pre">pos</span></tt> is an iterator into <tt class="literal"><span class="pre">s</span></tt>.</td>
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body"><p class="first"><tt class="literal"><span class="pre">pos</span></tt> is an iterator into <tt class="literal"><span class="pre">s</span></tt>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><tt class="literal"><span class="pre">r</span></tt> is a sequence, <a class="reference" href="./terminology.html#concept-identical">concept-identical</a> to <tt class="literal"><span class="pre">s</span></tt>, of the following elements:
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first"><tt class="literal"><span class="pre">r</span></tt> is a sequence, <a class="reference internal" href="./terminology.html#concept-identical">concept-identical</a> to <tt class="literal"><span class="pre">s</span></tt>, of the following elements:
|
||||
[<tt class="literal"><span class="pre"><a href="./begin.html" class="identifier">begin</a><s>::type</span></tt>, <tt class="literal"><span class="pre">pos</span></tt>), [<tt class="literal"><span class="pre"><a href="./begin.html" class="identifier">begin</a><r>::type</span></tt>, <tt class="literal"><span class="pre"><a href="./end.html" class="identifier">end</a><r>::type</span></tt>),
|
||||
[<tt class="literal"><span class="pre">pos</span></tt>, <tt class="literal"><span class="pre"><a href="./end.html" class="identifier">end</a><s>::type</span></tt>).</td>
|
||||
[<tt class="literal"><span class="pre">pos</span></tt>, <tt class="literal"><span class="pre"><a href="./end.html" class="identifier">end</a><s>::type</span></tt>).</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Postcondition:</th><td class="field-body"><p class="first">The relative order of the elements in <tt class="literal"><span class="pre">r</span></tt> is the same as in <tt class="literal"><span class="pre">s</span></tt>;</p>
|
||||
<pre class="last literal-block">
|
||||
<a href="./size.html" class="identifier">size</a><r>::value == <a href="./size.html" class="identifier">size</a><s>::value + <a href="./size.html" class="identifier">size</a><range>::value
|
||||
<a href="./size.html" class="identifier">size</a><r>::value == <a href="./size.html" class="identifier">size</a><s>::value + <a href="./size.html" class="identifier">size</a><range>::value
|
||||
</pre>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="intrinsic-insert-complexity">
|
||||
<div class="section" id="id289">
|
||||
<h3><a class="subsection-title" href="#complexity" name="complexity">Complexity</a></h3>
|
||||
<p>Sequence dependent. Quadratic in the worst case, linear at best; see the particular
|
||||
<p>Sequence dependent. Quadratic in the worst case, linear at best; see the particular
|
||||
sequence class' specification for details.</p>
|
||||
</div>
|
||||
<div class="section" id="intrinsic-insert-example">
|
||||
<div class="section" id="id290">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./vector-c.html" class="identifier">vector_c</a><int,0,1,7,8,9> numbers;
|
||||
@@ -119,7 +119,7 @@ typedef <a href="./insert-range.html" class="identifier">insert_range</a>< nu
|
||||
<a href="./assert-relation.html" class="identifier">BOOST_MPL_ASSERT_RELATION</a>( <a href="./size.html" class="identifier">size</a><range>::value, ==, 10 );
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( <a href="./equal.html" class="identifier">equal</a>< range,<a href="./range-c.html" class="identifier">range_c</a><int,0,10> > ));
|
||||
|
||||
typedef <a href="./insert-range.html" class="identifier">insert_range</a><
|
||||
typedef <a href="./insert-range.html" class="identifier">insert_range</a><
|
||||
<a href="./list.html" class="identifier">list</a><tt class="literal"><span class="pre">0</span></tt><>
|
||||
, <a href="./end.html" class="identifier">end</a>< <a href="./list.html" class="identifier">list</a><tt class="literal"><span class="pre">0</span></tt><> >::type
|
||||
, <a href="./list.html" class="identifier">list</a><int>
|
||||
@@ -128,15 +128,16 @@ typedef <a href="./insert-range.html" class="identifier">insert_range</a><
|
||||
<a href="./assert-relation.html" class="identifier">BOOST_MPL_ASSERT_RELATION</a>( <a href="./size.html" class="identifier">size</a><result2>::value, ==, 1 );
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="intrinsic-insert-see-also">
|
||||
<div class="section" id="id291">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./extensible-sequence.html">Extensible Sequence</a>, <a class="refentry reference" href="./insert.html"><tt class="refentry literal"><span class="pre">insert</span></tt></a>, <a class="refentry reference" href="./push-front.html"><tt class="refentry literal"><span class="pre">push_front</span></tt></a>, <a class="refentry reference" href="./push-back.html"><tt class="refentry literal"><span class="pre">push_back</span></tt></a>, <a class="refentry reference" href="./erase.html"><tt class="refentry literal"><span class="pre">erase</span></tt></a></p>
|
||||
<!-- modtime: November 10, 2004 04:40:01 +0000 -->
|
||||
<p><a class="reference internal" href="./extensible-sequence.html">Extensible Sequence</a>, <a class="reference internal" href="./insert.html">insert</a>, <a class="reference internal" href="./push-front.html">push_front</a>, <a class="reference internal" href="./push-back.html">push_back</a>, <a class="reference internal" href="./erase.html">erase</a></p>
|
||||
<!-- Sequences/Intrinsic Metafunctions//is_sequence -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./insert.html" class="navigation-link">Prev</a> <a href="./is-sequence.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./insert.html" class="navigation-link">Back</a> <a href="./is-sequence.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./intrinsic-metafunctions.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
+55
-54
@@ -1,12 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: insert</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
@@ -15,14 +12,14 @@
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./sequences.html" class="navigation-link">Sequences</a> / <a href="./intrinsic-metafunctions.html" class="navigation-link">Intrinsic Metafunctions</a> / <a href="./insert.html" class="navigation-link">insert</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="insert">
|
||||
<h1><a class="toc-backref" href="./intrinsic-metafunctions.html#id364" name="insert">insert</a></h1>
|
||||
<div class="section" id="insert-synopsis">
|
||||
<h1><a class="toc-backref" href="./intrinsic-metafunctions.html#id1436">insert</a></h1>
|
||||
<div class="section" id="id274">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
template<
|
||||
typename Sequence
|
||||
, typename Pos
|
||||
, typename T
|
||||
, typename T
|
||||
>
|
||||
struct <a href="./insert.html" class="identifier">insert</a>
|
||||
{
|
||||
@@ -30,9 +27,9 @@ struct <a href="./insert.html" class="identifier">insert</a>
|
||||
};
|
||||
|
||||
|
||||
template<
|
||||
template<
|
||||
typename Sequence
|
||||
, typename T
|
||||
, typename T
|
||||
>
|
||||
struct <a href="./insert.html" class="identifier">insert</a>
|
||||
{
|
||||
@@ -40,49 +37,49 @@ struct <a href="./insert.html" class="identifier">insert</a>
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="insert-description">
|
||||
<div class="section" id="id275">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p><tt class="literal"><span class="pre"><a href="./insert.html" class="identifier">insert</a></span></tt> is an <a class="reference" href="./terminology.html#overloaded-name">overloaded name</a>:</p>
|
||||
<p><tt class="literal"><span class="pre"><a href="./insert.html" class="identifier">insert</a></span></tt> is an <a class="reference internal" href="./terminology.html#overloaded-name">overloaded name</a>:</p>
|
||||
<ul class="simple">
|
||||
<li><tt class="literal"><span class="pre"><a href="./insert.html" class="identifier">insert</a><Sequence,Pos,T></span></tt> performs an insertion of
|
||||
type <tt class="literal"><span class="pre">T</span></tt> at an arbitrary position <tt class="literal"><span class="pre">Pos</span></tt> in <tt class="literal"><span class="pre">Sequence</span></tt>. <tt class="literal"><span class="pre">Pos</span></tt> is ignored is
|
||||
<tt class="literal"><span class="pre">Sequence</span></tt> is a model of <a class="reference" href="./extensible-associative.html">Extensible Associative Sequence</a>.</li>
|
||||
<li><tt class="literal"><span class="pre"><a href="./insert.html" class="identifier">insert</a><Sequence,T></span></tt> is a shortcut notation for <tt class="literal"><span class="pre"><a href="./insert.html" class="identifier">insert</a><Sequence,Pos,T></span></tt> for the
|
||||
case when <tt class="literal"><span class="pre">Sequence</span></tt> is a model of <a class="reference" href="./extensible-associative.html">Extensible Associative Sequence</a>.</li>
|
||||
<tt class="literal"><span class="pre">Sequence</span></tt> is a model of <a class="reference internal" href="./extensible-associative-sequence.html">Extensible Associative Sequence</a>.</li>
|
||||
<li><tt class="literal"><span class="pre"><a href="./insert.html" class="identifier">insert</a><Sequence,T></span></tt> is a shortcut notation for <tt class="literal"><span class="pre"><a href="./insert.html" class="identifier">insert</a><Sequence,Pos,T></span></tt> for the
|
||||
case when <tt class="literal"><span class="pre">Sequence</span></tt> is a model of <a class="reference internal" href="./extensible-associative-sequence.html">Extensible Associative Sequence</a>.</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="section" id="insert-header">
|
||||
<div class="section" id="id276">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/insert.hpp" class="header">boost/mpl/insert.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="insert-model-of">
|
||||
<div class="section" id="id277">
|
||||
<h3><a class="subsection-title" href="#model-of" name="model-of">Model of</a></h3>
|
||||
<p><a class="reference" href="./tag-dispatched.html">Tag Dispatched Metafunction</a></p>
|
||||
<p><a class="reference internal" href="./tag-dispatched-metafunction.html">Tag Dispatched Metafunction</a></p>
|
||||
</div>
|
||||
<div class="section" id="insert-parameters">
|
||||
<div class="section" id="id278">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="15%" />
|
||||
<col width="36%" />
|
||||
<col width="48%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre">Sequence</span></tt></td>
|
||||
<td><a class="reference" href="./extensible-sequence.html">Extensible Sequence</a> or
|
||||
<a class="reference" href="./extensible-associative.html">Extensible Associative Sequence</a></td>
|
||||
<td><a class="reference internal" href="./extensible-sequence.html">Extensible Sequence</a> or
|
||||
<a class="reference internal" href="./extensible-associative-sequence.html">Extensible Associative Sequence</a></td>
|
||||
<td>A sequence to insert into.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre">Pos</span></tt></td>
|
||||
<td><a class="reference" href="./forward-iterator.html">Forward Iterator</a></td>
|
||||
<td><a class="reference internal" href="./forward-iterator.html">Forward Iterator</a></td>
|
||||
<td>An iterator in <tt class="literal"><span class="pre">Sequence</span></tt> specifying the
|
||||
insertion position.</td>
|
||||
</tr>
|
||||
@@ -93,23 +90,26 @@ insertion position.</td>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="insert-expression-semantics">
|
||||
<div class="section" id="id279">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<div class="expression-semantics compound">
|
||||
<p class="compound-first">For any <a class="reference" href="./extensible-sequence.html">Extensible Sequence</a> <tt class="literal"><span class="pre">s</span></tt>, iterator <tt class="literal"><span class="pre">pos</span></tt> in <tt class="literal"><span class="pre">s</span></tt>, and arbitrary type <tt class="literal"><span class="pre">x</span></tt>:</p>
|
||||
<p class="compound-first">For any <a class="reference internal" href="./extensible-sequence.html">Extensible Sequence</a> <tt class="literal"><span class="pre">s</span></tt>, iterator <tt class="literal"><span class="pre">pos</span></tt> in <tt class="literal"><span class="pre">s</span></tt>, and arbitrary type <tt class="literal"><span class="pre">x</span></tt>:</p>
|
||||
<pre class="compound-middle literal-block">
|
||||
typedef <a href="./insert.html" class="identifier">insert</a><s,pos,x>::type r;
|
||||
typedef <a href="./insert.html" class="identifier">insert</a><s,pos,x>::type r;
|
||||
</pre>
|
||||
<table class="compound-last field-list" frame="void" rules="none">
|
||||
<table class="compound-last docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference" href="./extensible-sequence.html">Extensible Sequence</a></td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><p class="first"><a class="reference internal" href="./extensible-sequence.html">Extensible Sequence</a></p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body"><tt class="literal"><span class="pre">pos</span></tt> is an iterator in <tt class="literal"><span class="pre">s</span></tt>.</td>
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body"><p class="first"><tt class="literal"><span class="pre">pos</span></tt> is an iterator in <tt class="literal"><span class="pre">s</span></tt>.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><tt class="literal"><span class="pre">r</span></tt> is a sequence, <a class="reference" href="./terminology.html#concept-identical">concept-identical</a> to <tt class="literal"><span class="pre">s</span></tt>, of the following elements:
|
||||
[<tt class="literal"><span class="pre"><a href="./begin.html" class="identifier">begin</a><s>::type</span></tt>, <tt class="literal"><span class="pre">pos</span></tt>), <tt class="literal"><span class="pre">x</span></tt>, [<tt class="literal"><span class="pre">pos</span></tt>, <tt class="literal"><span class="pre"><a href="./end.html" class="identifier">end</a><s>::type</span></tt>).</td>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><p class="first"><tt class="literal"><span class="pre">r</span></tt> is a sequence, <a class="reference internal" href="./terminology.html#concept-identical">concept-identical</a> to <tt class="literal"><span class="pre">s</span></tt>, of the following elements:
|
||||
[<tt class="literal"><span class="pre"><a href="./begin.html" class="identifier">begin</a><s>::type</span></tt>, <tt class="literal"><span class="pre">pos</span></tt>), <tt class="literal"><span class="pre">x</span></tt>, [<tt class="literal"><span class="pre">pos</span></tt>, <tt class="literal"><span class="pre"><a href="./end.html" class="identifier">end</a><s>::type</span></tt>).</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Postcondition:</th><td class="field-body"><p class="first">The relative order of the elements in <tt class="literal"><span class="pre">r</span></tt> is the same as in <tt class="literal"><span class="pre">s</span></tt>.</p>
|
||||
<pre class="literal-block">
|
||||
@@ -117,7 +117,7 @@ typedef <a href="./insert.html" class="identifier">insert</a><s,pos,x>::ty
|
||||
</pre>
|
||||
<p>is identical to <tt class="literal"><span class="pre">x</span></tt>;</p>
|
||||
<pre class="last literal-block">
|
||||
<a href="./size.html" class="identifier">size</a><r>::value == <a href="./size.html" class="identifier">size</a><s>::value + 1;
|
||||
<a href="./size.html" class="identifier">size</a><r>::value == <a href="./size.html" class="identifier">size</a><s>::value + 1;
|
||||
</pre>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -125,18 +125,18 @@ typedef <a href="./insert.html" class="identifier">insert</a><s,pos,x>::ty
|
||||
</table>
|
||||
</div>
|
||||
<div class="expression-semantics compound">
|
||||
<p class="compound-first">For any <a class="reference" href="./extensible-associative.html">Extensible Associative Sequence</a> <tt class="literal"><span class="pre">s</span></tt>, iterator <tt class="literal"><span class="pre">pos</span></tt> in <tt class="literal"><span class="pre">s</span></tt>,
|
||||
<p class="compound-first">For any <a class="reference internal" href="./extensible-associative-sequence.html">Extensible Associative Sequence</a> <tt class="literal"><span class="pre">s</span></tt>, iterator <tt class="literal"><span class="pre">pos</span></tt> in <tt class="literal"><span class="pre">s</span></tt>,
|
||||
and arbitrary type <tt class="literal"><span class="pre">x</span></tt>:</p>
|
||||
<pre class="compound-middle literal-block">
|
||||
typedef <a href="./insert.html" class="identifier">insert</a><s,x>::type r;
|
||||
typedef <a href="./insert.html" class="identifier">insert</a><s,x>::type r;
|
||||
</pre>
|
||||
<table class="compound-middle field-list" frame="void" rules="none">
|
||||
<table class="compound-middle docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference" href="./extensible-associative.html">Extensible Associative Sequence</a></td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference internal" href="./extensible-associative-sequence.html">Extensible Associative Sequence</a></td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><tt class="literal"><span class="pre">r</span></tt> is <a class="reference" href="./terminology.html#concept-identical">concept-identical</a> and equivalent to <tt class="literal"><span class="pre">s</span></tt>, except that
|
||||
<tr class="field"><th class="field-name">Semantics:</th><td class="field-body"><tt class="literal"><span class="pre">r</span></tt> is <a class="reference internal" href="./terminology.html#concept-identical">concept-identical</a> and equivalent to <tt class="literal"><span class="pre">s</span></tt>, except that
|
||||
<tt class="literal"><span class="pre"><a href="./at.html" class="identifier">at</a><</span> <span class="pre">r,</span> <span class="pre"><a href="./key-type.html" class="identifier">key_type</a><s,x>::type</span> <span class="pre">>::type</span></tt> is identical to <tt class="literal"><span class="pre"><a href="./value-type.html" class="identifier">value_type</a><s,x>::type</span></tt>.</td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Postcondition:</th><td class="field-body"><tt class="literal"><span class="pre"><a href="./size.html" class="identifier">size</a><r>::value</span> <span class="pre">==</span> <span class="pre"><a href="./size.html" class="identifier">size</a><s>::value</span> <span class="pre">+</span> <span class="pre">1</span></tt>.</td>
|
||||
@@ -145,13 +145,13 @@ typedef <a href="./insert.html" class="identifier">insert</a><s,x>::type r
|
||||
</table>
|
||||
<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
|
||||
<pre class="compound-middle literal-block">
|
||||
typedef <a href="./insert.html" class="identifier">insert</a><s,pos,x>::type r;
|
||||
typedef <a href="./insert.html" class="identifier">insert</a><s,pos,x>::type r;
|
||||
</pre>
|
||||
<table class="compound-last field-list" frame="void" rules="none">
|
||||
<table class="compound-last docutils field-list" frame="void" rules="none">
|
||||
<col class="field-name" />
|
||||
<col class="field-body" />
|
||||
<tbody valign="top">
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference" href="./extensible-associative.html">Extensible Associative Sequence</a></td>
|
||||
<tr class="field"><th class="field-name">Return type:</th><td class="field-body"><a class="reference internal" href="./extensible-associative-sequence.html">Extensible Associative Sequence</a></td>
|
||||
</tr>
|
||||
<tr class="field"><th class="field-name">Precondition:</th><td class="field-body"><tt class="literal"><span class="pre">pos</span></tt> is an iterator in <tt class="literal"><span class="pre">s</span></tt>.</td>
|
||||
</tr>
|
||||
@@ -161,30 +161,30 @@ typedef <a href="./insert.html" class="identifier">insert</a><s,pos,x>::ty
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
<div class="section" id="insert-complexity">
|
||||
<div class="section" id="id280">
|
||||
<h3><a class="subsection-title" href="#complexity" name="complexity">Complexity</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="45%" />
|
||||
<col width="55%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Sequence archetype</th>
|
||||
<th>Complexity</th>
|
||||
<tr><th class="head">Sequence archetype</th>
|
||||
<th class="head">Complexity</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><a class="reference" href="./extensible-associative.html">Extensible Associative Sequence</a></td>
|
||||
<tr><td><a class="reference internal" href="./extensible-associative-sequence.html">Extensible Associative Sequence</a></td>
|
||||
<td>Amortized constant time.</td>
|
||||
</tr>
|
||||
<tr><td><a class="reference" href="./extensible-sequence.html">Extensible Sequence</a></td>
|
||||
<tr><td><a class="reference internal" href="./extensible-sequence.html">Extensible Sequence</a></td>
|
||||
<td>Linear in the worst case, or amortized
|
||||
constant time.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="insert-example">
|
||||
<div class="section" id="id281">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
typedef <a href="./vector-c.html" class="identifier">vector_c</a><int,0,1,3,4,5,6,7,8,9> numbers;
|
||||
@@ -203,15 +203,16 @@ typedef <a href="./insert.html" class="identifier">insert</a><m,mpl::<a href=
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( is_same< <a href="./at.html" class="identifier">at</a><m1,char>::type,long > ));
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="insert-see-also">
|
||||
<div class="section" id="id282">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./extensible-sequence.html">Extensible Sequence</a>, <a class="reference" href="./extensible-associative.html">Extensible Associative Sequence</a>, <a class="refentry reference" href="./insert-range.html"><tt class="refentry literal"><span class="pre">insert_range</span></tt></a>, <a class="refentry reference" href="./push-front.html"><tt class="refentry literal"><span class="pre">push_front</span></tt></a>, <a class="refentry reference" href="./push-back.html"><tt class="refentry literal"><span class="pre">push_back</span></tt></a>, <a class="refentry reference" href="./erase.html"><tt class="refentry literal"><span class="pre">erase</span></tt></a></p>
|
||||
<!-- modtime: November 10, 2004 04:40:08 +0000 -->
|
||||
<p><a class="reference internal" href="./extensible-sequence.html">Extensible Sequence</a>, <a class="reference internal" href="./extensible-associative-sequence.html">Extensible Associative Sequence</a>, <a class="reference internal" href="./insert-range.html">insert_range</a>, <a class="reference internal" href="./push-front.html">push_front</a>, <a class="reference internal" href="./push-back.html">push_back</a>, <a class="reference internal" href="./erase.html">erase</a></p>
|
||||
<!-- Sequences/Intrinsic Metafunctions//insert_range -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./has-key.html" class="navigation-link">Prev</a> <a href="./insert-range.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./has-key.html" class="navigation-link">Back</a> <a href="./insert-range.html" class="navigation-link">Along</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./intrinsic-metafunctions.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
|
||||
@@ -1,61 +1,58 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
|
||||
<!-- Software License, Version 1.0. (See accompanying -->
|
||||
<!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: inserter</title>
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>The MPL Reference Manual: inserter (class)</title>
|
||||
<link rel="stylesheet" href="../style.css" type="text/css" />
|
||||
</head>
|
||||
<body class="docframe refmanual">
|
||||
<table class="header"><tr class="header"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./front-inserter.html" class="navigation-link">Prev</a> <a href="./iteration-algorithms.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./front-inserter.html" class="navigation-link">Back</a> Along</span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./inserters.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./algorithms.html" class="navigation-link">Algorithms</a> / <a href="./inserters.html" class="navigation-link">Inserters</a> / <a href="./inserters-inserter.html" class="navigation-link">inserter</a></td>
|
||||
<td class="header-group page-location"><a href="../refmanual.html" class="navigation-link">Front Page</a> / <a href="./algorithms.html" class="navigation-link">Algorithms</a> / <a href="./inserters.html" class="navigation-link">Inserters</a> / <a href="./inserter-class.html" class="navigation-link">inserter (class)</a></td>
|
||||
</tr></table><div class="header-separator"></div>
|
||||
<div class="section" id="inserters-inserter">
|
||||
<h1><a class="toc-backref" href="./inserters.html#id395" name="inserters-inserter">inserter</a></h1>
|
||||
<a class="target" id="id87" name="id87"></a><div class="section" id="inserters-synopsis">
|
||||
<div class="section" id="inserter-class">
|
||||
<span id="id483"></span><h1><a class="toc-backref" href="./inserters.html#id1467">inserter (class)</a></h1>
|
||||
<div class="section" id="id484">
|
||||
<h3><a class="subsection-title" href="#synopsis" name="synopsis">Synopsis</a></h3>
|
||||
<pre class="literal-block">
|
||||
template<
|
||||
typename State
|
||||
, typename Operation
|
||||
>
|
||||
struct <a href="./inserter.html" class="identifier">inserter</a>
|
||||
struct <a href="./inserter-class.html" class="identifier">inserter</a>
|
||||
{
|
||||
typedef State state;
|
||||
typedef Operation operation;
|
||||
};
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="inserters-description">
|
||||
<div class="section" id="id485">
|
||||
<h3><a class="subsection-title" href="#description" name="description">Description</a></h3>
|
||||
<p>A general-purpose model of the <a class="reference" href="./inserter.html">Inserter</a> concept.</p>
|
||||
<p>A general-purpose model of the <a class="reference internal" href="./inserter.html">Inserter</a> concept.</p>
|
||||
</div>
|
||||
<div class="section" id="inserters-header">
|
||||
<div class="section" id="id486">
|
||||
<h3><a class="subsection-title" href="#header" name="header">Header</a></h3>
|
||||
<pre class="literal-block">
|
||||
#include <<a href="../../../../boost/mpl/inserter.hpp" class="header">boost/mpl/inserter.hpp</a>>
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="inserters-model-of">
|
||||
<div class="section" id="id487">
|
||||
<h3><a class="subsection-title" href="#model-of" name="model-of">Model of</a></h3>
|
||||
<p><a class="reference" href="./inserter.html">Inserter</a></p>
|
||||
<p><a class="reference internal" href="./inserter.html">Inserter</a></p>
|
||||
</div>
|
||||
<div class="section" id="inserters-parameters">
|
||||
<div class="section" id="id488">
|
||||
<h3><a class="subsection-title" href="#parameters" name="parameters">Parameters</a></h3>
|
||||
<table border="1" class="table">
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="19%" />
|
||||
<col width="38%" />
|
||||
<col width="43%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Parameter</th>
|
||||
<th>Requirement</th>
|
||||
<th>Description</th>
|
||||
<tr><th class="head">Parameter</th>
|
||||
<th class="head">Requirement</th>
|
||||
<th class="head">Description</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
@@ -64,62 +61,63 @@ struct <a href="./inserter.html" class="identifier">inserter</a>
|
||||
<td>A initial state.</td>
|
||||
</tr>
|
||||
<tr><td><tt class="literal"><span class="pre">Operation</span></tt></td>
|
||||
<td>Binary <a class="reference" href="./lambda-expression.html">Lambda Expression</a></td>
|
||||
<td>Binary <a class="reference internal" href="./lambda-expression.html">Lambda Expression</a></td>
|
||||
<td>An output operation.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="inserters-expression-semantics">
|
||||
<div class="section" id="id489">
|
||||
<h3><a class="subsection-title" href="#expression-semantics" name="expression-semantics">Expression semantics</a></h3>
|
||||
<p>The semantics of an expression are defined only
|
||||
where they differ from, or are not defined in <a class="reference" href="./inserter.html">Inserter</a>.</p>
|
||||
<p>For any binary <a class="reference" href="./lambda-expression.html">Lambda Expression</a> <tt class="literal"><span class="pre">op</span></tt> and arbitrary type <tt class="literal"><span class="pre">state</span></tt>:</p>
|
||||
<table border="1" class="table">
|
||||
where they differ from, or are not defined in <a class="reference internal" href="./inserter.html">Inserter</a>.</p>
|
||||
<p>For any binary <a class="reference internal" href="./lambda-expression.html">Lambda Expression</a> <tt class="literal"><span class="pre">op</span></tt> and arbitrary type <tt class="literal"><span class="pre">state</span></tt>:</p>
|
||||
<table border="1" class="docutils table">
|
||||
<colgroup>
|
||||
<col width="39%" />
|
||||
<col width="61%" />
|
||||
</colgroup>
|
||||
<thead valign="bottom">
|
||||
<tr><th>Expression</th>
|
||||
<th>Semantics</th>
|
||||
<tr><th class="head">Expression</th>
|
||||
<th class="head">Semantics</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody valign="top">
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./inserter.html" class="identifier">inserter</a><op,state></span></tt></td>
|
||||
<td>An <a class="reference" href="./inserter.html">Inserter</a>.</td>
|
||||
<tr><td><tt class="literal"><span class="pre"><a href="./inserter-class.html" class="identifier">inserter</a><op,state></span></tt></td>
|
||||
<td>An <a class="reference internal" href="./inserter.html">Inserter</a>.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="section" id="inserters-complexity">
|
||||
<div class="section" id="id490">
|
||||
<h3><a class="subsection-title" href="#complexity" name="complexity">Complexity</a></h3>
|
||||
<p>Amortized constant time.</p>
|
||||
</div>
|
||||
<div class="section" id="inserters-example">
|
||||
<div class="section" id="id491">
|
||||
<h3><a class="subsection-title" href="#example" name="example">Example</a></h3>
|
||||
<pre class="literal-block">
|
||||
template< typename N > struct is_odd : <a href="./bool.html" class="identifier">bool_</a>< ( N::value % 2 ) > {};
|
||||
|
||||
typedef <a href="./copy.html" class="identifier">copy</a><
|
||||
<a href="./range-c.html" class="identifier">range_c</a><int,0,10>
|
||||
, <a href="./inserter.html" class="identifier">inserter</a>< // a filtering '<a href="./push-back.html" class="identifier">push_back</a>' <a href="./inserter.html" class="identifier">inserter</a>
|
||||
, <a href="./inserter-class.html" class="identifier">inserter</a>< // a filtering '<a href="./push-back.html" class="identifier">push_back</a>' <a href="./inserter-class.html" class="identifier">inserter</a>
|
||||
<a href="./vector.html" class="identifier">vector</a><>
|
||||
, <a href="./if.html" class="identifier">if_</a>< is_odd<_2>, <a href="./push-back.html" class="identifier">push_back</a><_1,_2>, _1 >
|
||||
, <a href="./if.html" class="identifier">if_</a>< is_odd<<a href="./placeholders.html" class="identifier">_2</a>>, <a href="./push-back.html" class="identifier">push_back</a><<a href="./placeholders.html" class="identifier">_1</a>,<a href="./placeholders.html" class="identifier">_2</a>>, <a href="./placeholders.html" class="identifier">_1</a> >
|
||||
>
|
||||
>::type odds;
|
||||
|
||||
|
||||
<a href="./assert.html" class="identifier">BOOST_MPL_ASSERT</a>(( <a href="./equal.html" class="identifier">equal</a>< odds, <a href="./vector-c.html" class="identifier">vector_c</a><int,1,3,5,7,9>, <a href="./equal-to.html" class="identifier">equal_to</a><_,_> > ));
|
||||
</pre>
|
||||
</div>
|
||||
<div class="section" id="inserters-see-also">
|
||||
<div class="section" id="id492">
|
||||
<h3><a class="subsection-title" href="#see-also" name="see-also">See also</a></h3>
|
||||
<p><a class="reference" href="./algorithms.html">Algorithms</a>, <a class="reference" href="./inserter.html">Inserter</a>, <a class="reference" href="./reversible-algorithm.html">Reversible Algorithm</a>, <a class="refentry reference" href="./front-inserter.html"><tt class="refentry literal"><span class="pre">front_inserter</span></tt></a>, <a class="refentry reference" href="./back-inserter.html"><tt class="refentry literal"><span class="pre">back_inserter</span></tt></a></p>
|
||||
<!-- modtime: November 15, 2004 06:46:20 +0000 -->
|
||||
<p><a class="reference internal" href="./algorithms.html">Algorithms</a>, <a class="reference internal" href="./inserter.html">Inserter</a>, <a class="reference internal" href="./reversible-algorithm.html">Reversible Algorithm</a>, <a class="reference internal" href="./front-inserter.html">front_inserter</a>, <a class="reference internal" href="./back-inserter.html">back_inserter</a></p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="footer-separator"></div>
|
||||
<table class="footer"><tr class="footer"><td class="header-group navigation-bar"><span class="navigation-group"><a href="./front-inserter.html" class="navigation-link">Prev</a> <a href="./iteration-algorithms.html" class="navigation-link">Next</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./front-inserter.html" class="navigation-link">Back</a> Along</span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./inserters.html" class="navigation-link">Up</a> <a href="../refmanual.html" class="navigation-link">Home</a></span><span class="navigation-group-separator"> | </span><span class="navigation-group"><a href="./refmanual_toc.html" class="navigation-link">Full TOC</a></span></td>
|
||||
</tr></table></body>
|
||||
<td><div class="copyright-footer"><div class="copyright">Copyright © 2001-2009 Aleksey Gurtovoy and David Abrahams</div>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a class="reference external" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</div></td></tr></table></body>
|
||||
</html>
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user