update the docs

[SVN r17836]
This commit is contained in:
Aleksey Gurtovoy
2003-03-12 13:29:12 +00:00
parent 747dae9e6c
commit a69baa5eae
91 changed files with 1213 additions and 501 deletions

View File

@@ -2,6 +2,6 @@
<html><head><title>boost::mpl::Acknowledgements</title>
<link rel="stylesheet" href="./mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="./Table_of_Content.html"><img src="./mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>Acknowledgements</h1>The format and language of this reference documentation has been greatly influenced by the SGI's <a href="http://www.sgi.com/tech/stl/">[Standard Template Library Programmer's Guide]</a>.
<h1><a href="./Table_of_Contents.html"><img src="./mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>Acknowledgements</h1>The format and language of this reference documentation has been greatly influenced by the SGI's <a href="http://www.sgi.com/tech/stl/">[Standard Template Library Programmer's Guide]</a>.
<p><hr>
<a href="./Table_of_Content.html">Table of Content</a><br>Last edited July 17, 2002 9:04 am</body></html>
<a href="./Table_of_Contents.html">Table of Contents</a><br>Last edited July 17, 2002 9:04 am</body></html>

View File

@@ -2,9 +2,8 @@
<html><head><title>boost::mpl::Algorithms</title>
<link rel="stylesheet" href="./mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="./Table_of_Content.html"><img src="./mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>Algorithms</h1><ol>
<li>Iteration algorithms
<ol>
<h1><a href="./Table_of_Contents.html"><img src="./mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>Algorithms</h1><h4>Iteration algorithms</h4>
<ul>
<li><a href="./Reference/iter_fold.html">iter_fold</a>
<li><a href="./Reference/iter_fold_backward.html">iter_fold_backward</a>
<li><a href="./Reference/fold.html">fold</a>
@@ -13,9 +12,9 @@
<li><a href="./Reference/copy_if.html">copy_if</a>
<li><a href="./Reference/copy_backward.html">copy_backward</a>
<li><a href="./Reference/copy_backward_if.html">copy_backward_if</a>
</ol>
<li>Querying algorithms
<ol>
</ul>
<h4>Querying algorithms</h4>
<ul>
<li><a href="./Reference/find.html">find</a>
<li><a href="./Reference/find_if.html">find_if</a>
<li><a href="./Reference/contains.html">contains</a>
@@ -24,17 +23,18 @@
<li><a href="./Reference/equal.html">equal</a>
<li><a href="./Reference/lower_bound.html">lower_bound</a>
<li><a href="./Reference/upper_bound.html">upper_bound</a>
<li>max_element
<li>min_element
</ol>
<li>Transformation algorithms
<ol>
<li><a href="./Reference/max_element.html">max_element</a>
<li><a href="./Reference/min_element.html">min_element</a>
</ul>
<h4>Transformation algorithms</h4>
<ul>
<li><a href="./Reference/transform.html">transform</a>
<li><a href="./Reference/remove.html">remove</a>
<li><a href="./Reference/remove_if.html">remove_if</a>
<li><a href="./Reference/replace.html">replace</a>
<li><a href="./Reference/replace_if.html">replace_if</a>
</ol>
</ol>
<li><a href="./Reference/replace_if.html">replace_if</a>
<li><a href="./Reference/reverse.html">reverse</a>
<li>unique
</ul>
<p><hr>
<a href="./Table_of_Content.html">Table of Content</a><br>Last edited July 20, 2002 12:00 am</body></html>
<a href="./Table_of_Contents.html">Table of Contents</a><br>Last edited March 10, 2003 1:55 am</body></html>

View File

@@ -2,7 +2,7 @@
<html><head><title>boost::mpl::Bidirectional Iterator</title>
<link rel="stylesheet" href="./mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="./Table_of_Content.html"><img src="./mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>Bidirectional Iterator</h1><h3>Description</h3>
<h1><a href="./Table_of_Contents.html"><img src="./mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>Bidirectional Iterator</h1><h3>Description</h3>
<p>
A Bidirectional Iterator is a <a href="./Forward_Iterator.html">Forward Iterator</a> that provides a way to obtain the previous element in a sequence.
<p>
@@ -47,4 +47,4 @@ For any bidirectional iterators <code>i</code> and <code>j</code> the following
<p>
<a href="./Bidirectional_Sequence.html">Bidirectional Sequence</a>, <a href="./Forward_Iterator.html">Forward Iterator</a>, <a href="./Random_Access_Iterator.html">Random Access Iterator</a>
<p><hr>
<a href="./Table_of_Content.html">Table of Content</a><br>Last edited July 15, 2002 11:33 am</body></html>
<a href="./Table_of_Contents.html">Table of Contents</a><br>Last edited July 15, 2002 11:33 am</body></html>

View File

@@ -2,7 +2,7 @@
<html><head><title>boost::mpl::Bidirectional Sequence</title>
<link rel="stylesheet" href="./mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="./Table_of_Content.html"><img src="./mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>Bidirectional Sequence</h1><h3>Description</h3>
<h1><a href="./Table_of_Contents.html"><img src="./mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>Bidirectional Sequence</h1><h3>Description</h3>
<p>
A Bidirectional Sequence is a <a href="./Forward_Sequence.html">Forward Sequence</a>, which provides iterators that satisfy the <a href="./Bidirectional_Iterator.html">Bidirectional Iterator</a> requirements.
<p>
@@ -32,4 +32,4 @@ Bidirectional Sequence does not define any new expressions beyond those defined
<p>
<a href="./Forward_Sequence.html">Forward Sequence</a>, <a href="./Random_Access_Sequence.html">Random Access Sequence</a>, <a href="./Bidirectional_Iterator.html">Bidirectional Iterator</a>
<p><hr>
<a href="./Table_of_Content.html">Table of Content</a><br>Last edited July 15, 2002 2:36 pm</body></html>
<a href="./Table_of_Contents.html">Table of Contents</a><br>Last edited July 15, 2002 2:36 pm</body></html>

View File

@@ -2,7 +2,7 @@
<html><head><title>boost::mpl::Categorized index</title>
<link rel="stylesheet" href="./mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="./Table_of_Content.html"><img src="./mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>Categorized index</h1><h3>Concepts</h3>
<h1><a href="./Table_of_Contents.html"><img src="./mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>Categorized index</h1><h4>Concepts</h4>
<p>
<ul>
<li><a href="./Bidirectional_Iterator.html">Bidirectional Iterator</a>
@@ -13,23 +13,31 @@
<li><a href="./Input_Iterator.html">Input Iterator</a>
<li><a href="./Integral_Constant.html">Integral Constant</a>
<li><a href="./Metafunction.html">Metafunction</a>
<li><a href="./Metafunction_Class.html">Metafunction Class</a>
<li><a href="./Random_Access_Iterator.html">Random Access Iterator</a>
<li><a href="./Random_Access_Sequence.html">Random Access Sequence</a>
<li><a href="./Sequence.html">Sequence</a>
<li><a href="./Trivial_Iterator.html">Trivial Iterator</a>
</ul>
<p>
<h3>Components</h3>
<h4>Components</h4>
<p>
<ul>
<li><a href="./Reference/advance.html">advance</a>
<li><a href="./Reference/and.html">and_</a>
<li><a href="./Reference/at.html">at</a>
<li><a href="./Reference/at_c.html">at_c</a>
<li><a href="./Reference/back.html">back</a>
<li><a href="./Reference/begin.html">begin</a>
<li><a href="./Reference/clear.html">clear</a>
<li><a href="./Reference/contains.html">contains</a>
<li><a href="./Reference/copy.html">copy</a>
<li><a href="./Reference/copy_backward.html">copy_backward</a>
<li><a href="./Reference/copy_backward_if.html">copy_backward_if</a>
<li><a href="./Reference/copy_if.html">copy_if</a>
<li><a href="./Reference/count.html">count</a>
<li><a href="./Reference/count_if.html">count_if</a>
<li><a href="./Reference/deref.html">deref</a>
<li><a href="./Reference/distance.html">distance</a>
<li><a href="./Reference/divides.html">divides</a>
<li><a href="./Reference/empty.html">empty</a>
@@ -38,6 +46,7 @@
<li><a href="./Reference/equal_to.html">equal_to</a>
<li><a href="./Reference/erase.html">erase</a>
<li><a href="./Reference/erase_range.html">erase_range</a>
<li><a href="./Reference/filter_view.html">filter_view</a>
<li><a href="./Reference/find.html">find</a>
<li><a href="./Reference/find_if.html">find_if</a>
<li><a href="./Reference/fold.html">fold</a>
@@ -48,25 +57,26 @@
<li><a href="./Reference/insert.html">insert</a>
<li><a href="./Reference/insert_range.html">insert_range</a>
<li><a href="./Reference/iter_fold.html">iter_fold</a>
<li><a href="./Reference/iter_fold_backward.html">iter_fold_backward</a>
<li><a href="./Reference/iterator_category.html">iterator_category</a>
<li><a href="./Reference/joint_view.html">joint_view</a>
<li><a href="./Reference/less.html">less</a>
<li><a href="./Reference/less_equal.html">less_equal</a>
<li><a href="./Reference/list.html">list</a>
<li><a href="./Reference/list_c.html">list_c</a>
<li><a href="./Reference/logical_and.html">logical_and</a>
<li><a href="./Reference/logical_not.html">logical_not</a>
<li><a href="./Reference/logical_or.html">logical_or</a>
<li><a href="./Reference/lower_bound.html">lower_bound</a>
<li><a href="./Reference/max_element.html">max_element</a>
<li><a href="./Reference/min_element.html">min_element</a>
<li><a href="./Reference/minus.html">minus</a>
<li><a href="./Reference/modulus.html">modulus</a>
<li><a href="./Reference/multiplies.html">multiplies</a>
<li><a href="./Reference/negate.html">negate</a>
<li><a href="./Reference/next.html">next</a>
<li><a href="./Reference/not.html">not_</a>
<li><a href="./Reference/not_equal_to.html">not_equal_to</a>
<li><a href="./Reference/or.html">or_</a>
<li><a href="./Reference/plus.html">plus</a>
<li><a href="./Reference/pop_back.html">pop_back</a>
<li><a href="./Reference/pop_front.html">pop_front</a>
<li><a href="./Reference/prior.html">prior</a>
<li><a href="./Reference/push_back.html">push_back</a>
<li><a href="./Reference/push_front.html">push_front</a>
<li><a href="./Reference/range_c.html">range_c</a>
@@ -74,11 +84,15 @@
<li><a href="./Reference/remove_if.html">remove_if</a>
<li><a href="./Reference/replace.html">replace</a>
<li><a href="./Reference/replace_if.html">replace_if</a>
<li><a href="./Reference/reverse.html">reverse</a>
<li><a href="./Reference/single_view.html">single_view</a>
<li><a href="./Reference/size.html">size</a>
<li><a href="./Reference/transform.html">transform</a>
<li><a href="./Reference/transform_view.html">transform_view</a>
<li><a href="./Reference/upper_bound.html">upper_bound</a>
<li><a href="./Reference/vector.html">vector</a>
<li><a href="./Reference/vector_c.html">vector_c</a>
<li><a href="./Reference/zip_view.html">zip_view</a>
</ul>
<p><hr>
<a href="./Table_of_Content.html">Table of Content</a><br>Last edited July 17, 2002 8:58 am</body></html>
<a href="./Table_of_Contents.html">Table of Contents</a><br>Last edited March 12, 2003 7:17 am</body></html>

View File

@@ -2,7 +2,7 @@
<html><head><title>boost::mpl::Extensible Sequence</title>
<link rel="stylesheet" href="./mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="./Table_of_Content.html"><img src="./mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>Extensible Sequence</h1><h3>Description</h3>
<h1><a href="./Table_of_Contents.html"><img src="./mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>Extensible Sequence</h1><h3>Description</h3>
<p>
An Extensible Sequence is either a <a href="./Forward_Sequence.html">Forward Sequence</a>, a <a href="./Bidirectional_Sequence.html">Bidirectional Sequence</a> or a <a href="./Random_Access_Sequence.html">Random Access Sequence</a> that supports insertion and removal operations.
<p>
@@ -37,4 +37,4 @@ See the description of <a href="./Reference/clear.html">clear</a>, <a href="./Re
<p>
<a href="./Sequences.html">Sequences</a>, <code><a href="./Reference/clear.html">clear</a></code>, <code><a href="./Reference/insert.html">insert</a></code>, <code><a href="./Reference/erase.html">erase</a></code>
<p><hr>
<a href="./Table_of_Content.html">Table of Content</a><br>Last edited July 16, 2002 6:27 pm</body></html>
<a href="./Table_of_Contents.html">Table of Contents</a><br>Last edited July 16, 2002 6:27 pm</body></html>

View File

@@ -2,7 +2,7 @@
<html><head><title>boost::mpl::Forward Iterator</title>
<link rel="stylesheet" href="./mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="./Table_of_Content.html"><img src="./mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>Forward Iterator</h1><h3>Description</h3>
<h1><a href="./Table_of_Contents.html"><img src="./mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>Forward Iterator</h1><h3>Description</h3>
<p>
A Forward Iterator is an <a href="./Input_Iterator.html">Input Iterator</a> that guarantees a linear traversal over the sequence.
<p>
@@ -31,4 +31,4 @@ For any forward iterators i and j the following invariants always hold:
<p>
<a href="./Forward_Sequence.html">Forward Sequence</a>, <a href="./Input_Iterator.html">Input Iterator</a>, <a href="./Bidirectional_Iterator.html">Bidirectional Iterator</a>
<p><hr>
<a href="./Table_of_Content.html">Table of Content</a><br>Last edited July 15, 2002 10:53 am</body></html>
<a href="./Table_of_Contents.html">Table of Contents</a><br>Last edited July 15, 2002 10:53 am</body></html>

View File

@@ -2,7 +2,7 @@
<html><head><title>boost::mpl::Forward Sequence</title>
<link rel="stylesheet" href="./mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="./Table_of_Content.html"><img src="./mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>Forward Sequence</h1><h3>Description</h3>
<h1><a href="./Table_of_Contents.html"><img src="./mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>Forward Sequence</h1><h3>Description</h3>
<p>
A Forward Sequence is a <a href="./Sequence.html">Sequence</a> which guarantees that its elements are arranged in a definite order, and that the ordering will not change spontaneously [<a href="#1">1</a>]. Iterators into a forward sequence satisfy the <a href="./Forward_Iterator.html">Forward Iterator</a> requirements.
<p>
@@ -45,4 +45,4 @@ For any forward sequence <code>s</code> the following invariants always hold:
<p>
<a href="./Sequence.html">Sequence</a>, <a href="./Bidirectional_Sequence.html">Bidirectional Sequence</a>, <a href="./Forward_Iterator.html">Forward Iterator</a>
<p><hr>
<a href="./Table_of_Content.html">Table of Content</a><br>Last edited July 15, 2002 2:34 pm</body></html>
<a href="./Table_of_Contents.html">Table of Contents</a><br>Last edited July 15, 2002 2:34 pm</body></html>

View File

@@ -2,7 +2,7 @@
<html><head><title>boost::mpl::Input Iterator</title>
<link rel="stylesheet" href="./mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="./Table_of_Content.html"><img src="./mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>Input Iterator</h1><h3>Description</h3>
<h1><a href="./Table_of_Contents.html"><img src="./mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>Input Iterator</h1><h3>Description</h3>
<p>
An Input Iterator is a <a href="./Trivial_Iterator.html">Trivial Iterator</a> that provides a way to obtain the next iterator in a sequence.
<p>
@@ -16,7 +16,7 @@ An Input Iterator is a <a href="./Trivial_Iterator.html">Trivial Iterator</a> th
<li>an input iterator is <em>past-the-end</em> if it points beyond the last element of a sequence; past-the-end iterators are non-dereferenceable;
<li>an input iterator is <em>valid</em> if it is dereferenceable or past-the-end;
<li>an input iterator <code>i</code> is <em>incrementable</em> if there is a "next" iterator, that is, if <code>i::next</code> expression is well-defined; past-the-end iterators are not incrementable;
<li>an input iterator <code>j</code> is <em>reachable</em> from a forward iterator <code>i</code> if, after recursive application of <code><a href="./Reference/next.html">next</a></code> operation to <code>i</code> a finite number of times, <code>i</code> is identical to <code>j</code>;
<li>an input iterator <code>j</code> is <em>reachable</em> from a forward iterator <code>i</code> if, after recursive application of <code>next</code> operation to <code>i</code> a finite number of times, <code>i</code> is identical to <code>j</code>;
<li>the notation <code>[i,j)</code> refers to a <em>range</em> of iterators beginning with <code>i</code> and up to but not including <code>j</code>;
<li>the range <code>[i,j)</code> is a <em>valid range</em> if both <code>i</code> and <code>j</code> are valid iterators, and <code>j</code> is reachable from <code>i</code>.
</ul>
@@ -41,4 +41,4 @@ In addition to the expressions defined in <a href="./Trivial_Iterator.html">Triv
<p>
<a href="./Sequence.html">Sequence</a>, <a href="./Trivial_Iterator.html">Trivial Iterator</a>, <a href="./Forward_Iterator.html">Forward Iterator</a>
<p><hr>
<a href="./Table_of_Content.html">Table of Content</a><br>Last edited July 15, 2002 10:48 am</body></html>
<a href="./Table_of_Contents.html">Table of Contents</a><br>Last edited July 15, 2002 10:48 am</body></html>

View File

@@ -2,9 +2,9 @@
<html><head><title>boost::mpl::Integral Constant</title>
<link rel="stylesheet" href="./mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="./Table_of_Content.html"><img src="./mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>Integral Constant</h1><h3>Description</h3>
<h1><a href="./Table_of_Contents.html"><img src="./mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>Integral Constant</h1><h3>Description</h3>
<p>
An Integral Constant is a class (or a template class) that represents a value of a built-in integral type (<code>bool</code>, <code>int</code>, <code>long</code>, etc.) in compile-time programs. An integral constant directly supports the increment/decrement operations within the range of the built-in integral type it wraps. Other arithmetic operations are supported through the external metafunctions.
An Integral Constant is a class representing a value of a built-in integral type (<code>bool</code>, <code>int</code>, <code>long</code>, etc.) in compile-time programs. An integral constant directly supports the increment/decrement operations within the range of the built-in integral type it wraps. Other arithmetic operations are supported through the external metafunctions.
<p>
<h3>Valid expressions</h3>
<p>
@@ -25,19 +25,19 @@ An Integral Constant is a class (or a template class) that represents a value of
<tr><td><code>typename n::type</code></td><td>Amortized constant time</td><td></td><td>Self-reference.</td><td><code>is_same&lt;n::type,n&gt;::value == true</code> </td></tr>
<tr><td><code>n::value</code></td><td>Amortized constant time</td><td></td><td>Value of <code>n</code>.</td><td></td></tr>
<tr><td><code>typename n::next</code></td><td>Amortized constant time</td><td><code>n::value_type</code> supports an increment operation; <code>n::value</code> is incrementable</td><td>Increment operation</td><td><code>n::next::value == n::value + 1</code> </td></tr>
<tr><td><code>typename n::prior</code></td><td>Amortized constant time</td><td><code>n::value_type</code> supports an decrement operation; <code>n::value</code> is decrementable</td><td>Decrement operation</td><td><code>n::next::value == n::value - 1</code> </td></tr>
<tr><td><code>typename n::prior</code></td><td>Amortized constant time</td><td><code>n::value_type</code> supports an decrement operation; <code>n::value</code> is decrementable</td><td>Decrement operation</td><td><code>n::prior::value == n::value - 1</code> </td></tr>
</table>
<p>
<h3>Models</h3>
<p>
<ul>
<li><code>integral_c</code>
<li><code>int_c</code>
<li><code>bool_c</code>
<li><code>int_</code>
<li><code>bool_</code>
</ul>
<p>
<h3>See also</h3>
<p>
<code><a href="./Reference/next.html">next</a></code>, <code><a href="./Reference/prior.html">prior</a></code>
<code>next</code>, <code>prior</code>
<p><hr>
<a href="./Table_of_Content.html">Table of Content</a><br>Last edited July 17, 2002 7:05 am</body></html>
<a href="./Table_of_Contents.html">Table of Contents</a><br>Last edited March 10, 2003 4:21 am</body></html>

View File

@@ -0,0 +1,19 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Integral constant classes</title>
<link rel="stylesheet" href="./mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="./Table_of_Contents.html"><img src="./mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>Integral constant classes</h1><h4>Concepts</h4>
<ul>
<li><a href="./Integral_Constant.html">Integral Constant</a>
</ul>
<p>
<h4>Types</h4>
<ul>
<li>integral_c
<li>bool_
<li>int_
<li>long_
<li>size_t
</ul>
<p><hr>
<a href="./Table_of_Contents.html">Table of Contents</a><br>Last edited March 10, 2003 1:34 am</body></html>

View File

@@ -2,24 +2,30 @@
<html><head><title>boost::mpl::Iterators</title>
<link rel="stylesheet" href="./mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="./Table_of_Content.html"><img src="./mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>Iterators</h1>Iterators are the mechanism that makes it possible to decouple algorithms from concrete compile-time sequence implementations.
<h1><a href="./Table_of_Contents.html"><img src="./mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>Iterators</h1>Iterators are a generic means of addressing a particular element or
range of sequential elements in a sequence. They are also the mechanism
that makes it possible to decouple algorithms from concrete compile-time
sequence implementations. Under the hood, all MPL <a href="./Algorithms.html">sequence algorithms</a>
are implemented in terms of iterators, which, in particular, means that
they will work on any custom compile-time sequence, given that the appropriate
iterator inteface is provided.
<p>
<ol>
<li>Concepts
<ol>
<h4>Concepts</h4>
<ul>
<li><a href="./Trivial_Iterator.html">Trivial Iterator</a>
<li><a href="./Input_Iterator.html">Input Iterator</a>
<li><a href="./Forward_Iterator.html">Forward Iterator</a>
<li><a href="./Bidirectional_Iterator.html">Bidirectional Iterator</a>
<li><a href="./Random_Access_Iterator.html">Random Access Iterator</a>
</ol>
<li>Algorithms
<ol>
</ul>
<p>
<h4>Metafunctions</h4>
<ul>
<li><a href="./Reference/iterator_category.html">iterator_category</a>
<li><a href="./Reference/begin.html">begin</a>/<a href="./Reference/end.html">end</a>
<li><a href="./Reference/deref.html">deref</a>
<li><a href="./Reference/advance.html">advance</a>
<li><a href="./Reference/distance.html">distance</a>
</ol>
</ol>
</ul>
<p><hr>
<a href="./Table_of_Content.html">Table of Content</a><br>Last edited July 17, 2002 6:16 am</body></html>
<a href="./Table_of_Contents.html">Table of Contents</a><br>Last edited March 10, 2003 1:42 am</body></html>

View File

@@ -2,59 +2,76 @@
<html><head><title>boost::mpl::Metafunction</title>
<link rel="stylesheet" href="./mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="./Table_of_Content.html"><img src="./mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>Metafunction</h1><h3>Description</h3>
<p>
A Metafunction is a class template that represents a function invocable at compile-time. A metafunction is invoked by instantiating the class template with particular template parameters (metafunction arguments); the result of metafunction application is accessible through the instantiation's nested <code>type</code> typedef. A metafunction can have a variable number of parameters.
<p>
<h3>Example</h3>
<p>
<pre>
<span class="cxx-comment">// binary metafunction</span>
template&lt; typename T1, typename T2 &gt;
struct is_same
{
typedef false_c type;
};
<p>
template&lt; typename T &gt;
struct is_same
{
typedef true_c type;
};
<p>
<span class="cxx-comment">// metafunction invocation</span>
typedef is_same&lt;int,char&gt;::type res;
BOOST_STATIC_ASSERT(!res::value);
</pre>
<h1><a href="./Table_of_Contents.html"><img src="./mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>Metafunction</h1><h3>Description</h3>
<p>
A <em>metafunction</em> is a class or a class template that represents a function invocable at compile-time. A non-nullary metafunction is invoked by instantiating the class template with particular template parameters
(metafunction arguments); the result of the metafunction application is accessible through the instantiation's nested <code>type</code> typedef. All metafunction's arguments must be types (i.e. only <em>type template parameters</em> are allowed). A metafunction can have a variable number of parameters. A nullary metafunction is represented as a class with a nested
<code>type</code> typename member.
<p>
<h3>Valid expressions</h3>
<p>
<table border="1">
<tr><th>&nbsp;Expression&nbsp;</th><th>&nbsp;Expression type &nbsp;</th></tr>
<tr><td><code>typename f::type</code></td><td>A type </td></tr>
<tr><td><code>typename f&lt;t1,..,tn&gt;::type</code></td><td>A type </td></tr>
<tr><td><code>typename f&lt;a1,..,an&gt;::type</code></td><td>A type </td></tr>
</table>
<p>
<h3>Expression semantics</h3>
<p>
<table border="1">
<tr><th>&nbsp;Expression&nbsp;</th><th>&nbsp;Complexity&nbsp;</th><th>&nbsp;Precondition&nbsp;</th><th>&nbsp;Semantics&nbsp;</th><th>&nbsp;Postcondition&nbsp;</th></tr>
<tr><td><code>typename f::type</code></td><td>Metafunction dependent</td><td><code>f</code> is a nullary metafunction; <code>f::type</code> is a <em>type-name</em></td><td><code>f::type</code> is the result of the metafunction invocation</td><td></td></tr>
<tr><td><code>typename f&lt;t1,..,tn&gt;::type</code></td><td>Metafunction dependent</td><td><code>f</code> is an <code>n</code>-ary metafunction; <code>t1,..,tn</code> are types; <code>f&lt;t1,..,tn&gt;::type</code> is a <em>type-name</em></td><td><code>f&lt;t1,..,tn&gt;::type</code> is the result of the metafunction invocation with the input arguments <code>t1,..,tn</code></td><td></td></tr>
<tr><td><code>typename f::type</code></td><td>unspecified</td><td><code>f</code> is a nullary metafunction; <code>f::type</code> is a <em>type-name</em></td><td><code>f::type</code> is the result of the metafunction invocation</td><td></td></tr>
<tr><td><code>typename f&lt;a1,..,an&gt;::type</code></td><td>unspecified</td><td><code>f</code> is an <code>n</code>-ary metafunction; <code>a1,..,an</code> are types; <code>f&lt;a1,..,an&gt;::type</code> is a <em>type-name</em></td><td><code>f&lt;a1,..,an&gt;::type</code> is the result of the metafunction invocation with the actual arguments <code>a1,..,an</code></td><td></td></tr>
</table>
<p>
<p>
<h3>Example</h3>
<p>
<pre>
<span class="cxx-comment">// nullary metafunction</span>
struct always_true { typedef true_ type; };
<p>
<span class="cxx-comment">// unary metafunction</span>
template&lt; typename T &gt; struct sizeof_
{
typedef int_&lt; sizeof(T) &gt; type;
};
<p>
<span class="cxx-comment">// binary metafunction</span>
template&lt; typename T1, typename T2 &gt;
struct is_same
{
typedef false_ type;
};
<p>
template&lt; typename T &gt;
struct is_same&lt;T,T&gt;
{
typedef true_ type;
};
<p>
<span class="cxx-comment">// invocations</span>
typedef always_true::type t1;
typedef sizeof_&lt;int&gt;::type t2;
typedef is_same&lt;int,char&gt;::type t3;
<p>
<span class="cxx-comment">// results checks</span>
BOOST_STATIC_ASSERT(t1::value);
BOOST_STATIC_ASSERT(t2::value == sizeof(int));
BOOST_STATIC_ASSERT(!t3::value);
</pre>
<p>
<h3>Models</h3>
<p>
<ul>
<li><code><a href="./Reference/plus.html">plus</a></code>
<li><code><a href="./Reference/logical_not.html">logical_not</a></code>
<li><code><a href="./Reference/not.html">not_</a></code>
<li><code><a href="./Reference/size.html">size</a></code>
<li><code>max_element</code>
<li><code><a href="./Reference/max_element.html">max_element</a></code>
</ul>
<p>
<h3>See also</h3>
<p>
<a href="./Metafunctions.html">Metafunctions</a>, [Metafunction Class]
<a href="./Metafunctions.html">Metafunctions</a>, <a href="./Metafunction_Class.html">Metafunction Class</a>
<p><hr>
<a href="./Table_of_Content.html">Table of Content</a><br>Last edited July 16, 2002 11:27 pm</body></html>
<a href="./Table_of_Contents.html">Table of Contents</a><br>Last edited March 10, 2003 3:27 am</body></html>

View File

@@ -0,0 +1,67 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Metafunction Class</title>
<link rel="stylesheet" href="./mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="./Table_of_Contents.html"><img src="./mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>Metafunction Class</h1><h3>Description</h3>
<p>
A <em>metafunction class</em> is a certain form of metafunction representation that enables higher-order metaprogramming. In particular, a non-nullary metafunction class is a type with a nested class template member <code>apply</code>. A nullary metafunction class has the form of a <a href="./Metafunction.html">nullary metafunction</a>. A metafunction class invocation is defined as invocation of its nested <code>apply</code> <a href="./Metafunction.html">metafunction</a>.
<p>
<h3>Valid expressions</h3>
<p>
<table border="1">
<tr><th>&nbsp;Expression&nbsp;</th><th>&nbsp;Expression type &nbsp;</th></tr>
<tr><td><code>typename f::type</code></td><td>A type </td></tr>
<tr><td><code>typename f::template apply&lt;a1,..,an&gt;::type</code></td><td>A type </td></tr>
</table>
<p>
<h3>Expression semantics</h3>
<p>
<table border="1">
<tr><th>&nbsp;Expression&nbsp;</th><th>&nbsp;Complexity&nbsp;</th><th>&nbsp;Precondition&nbsp;</th><th>&nbsp;Semantics&nbsp;</th><th>&nbsp;Postcondition&nbsp;</th></tr>
<tr><td><code>typename f::type</code></td><td>unspecified</td><td><code>f</code> is a nullary metafunction class; <code>f::type</code> is a <em>type-name</em></td><td><code>f::type</code> is the result of the metafunction class invocation</td><td></td></tr>
<tr><td><code>typename f::template apply&lt;a1,..,an&gt;::type</code></td><td>unspecified</td><td><code>f</code> is an <code>n</code>-ary metafunction class; <code>apply</code> is a <a href="./Metafunction.html">metafunction</a></td><td><code>typename f::template apply&lt;a1,..,an&gt;::type</code> is the result of the metafunction class invocation with the actual arguments <code>a1,..,an</code></td><td></td></tr>
</table>
<p>
<p>
<h3>Example</h3>
<p>
<pre>
<span class="cxx-comment">// nullary metafunction class</span>
struct always_true { typedef true_ type; };
<p>
template&lt; long N &gt; struct le
{
template&lt; typename M &gt; struct apply
{
typedef bool_&lt; (M::value &lt; N) &gt; type;
};
};
<p>
<span class="cxx-comment">// unary metafunction class</span>
typedef le&lt;5&gt; less_than_5;
<p>
<span class="cxx-comment">// binary metafunction class</span>
struct less_than
{
template&lt; typename N1, typename N2 &gt; struct apply
{
typedef bool_&lt; (N1::value &lt; N2::value) &gt; type;
};
};
<p>
<span class="cxx-comment">// invocations</span>
typedef always_true::type t1;
typedef less_than_5::apply&lt; int_&lt;7&gt; &gt;::type t2;
typedef less_than::apply&lt; int_&lt;5&gt;,int_&lt;7&gt; &gt;::type t3;
<p>
<span class="cxx-comment">// results checks</span>
BOOST_STATIC_ASSERT(t1::value);
BOOST_STATIC_ASSERT(!t2::value);
BOOST_STATIC_ASSERT(t3::value);
</pre>
<p>
<h3>See also</h3>
<p>
<a href="./Metafunctions.html">Metafunctions</a>, <a href="./Metafunction.html">Metafunction</a>
<p><hr>
<a href="./Table_of_Contents.html">Table of Contents</a><br>Last edited March 10, 2003 4:16 am</body></html>

View File

@@ -2,38 +2,60 @@
<html><head><title>boost::mpl::Metafunctions</title>
<link rel="stylesheet" href="./mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="./Table_of_Content.html"><img src="./mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>Metafunctions</h1><ol>
<li>Concepts
<ol>
<h1><a href="./Table_of_Contents.html"><img src="./mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>Metafunctions</h1><h4>Concepts</h4>
<ul>
<li><a href="./Metafunction.html">Metafunction</a>
</ol>
<li>Metafunction
<ol>
<li>Arithmetic operations
<ol>
<li><a href="./Metafunction_Class.html">Metafunction Class</a>
</ul>
<p>
<h4>Invocation</h4>
<ul>
<li>apply
</ul>
<p>
<h4>Arithmetic operations </h4>
<ul>
<li><a href="./Reference/plus.html">plus</a>
<li><a href="./Reference/minus.html">minus</a>
<li><a href="./Reference/multiplies.html">multiplies</a>
<li><a href="./Reference/divides.html">divides</a>
<li><a href="./Reference/modulus.html">modulus</a>
<li><a href="./Reference/negate.html">negate</a>
</ol>
<li>Comparisons
<ol>
</ul>
<p>
<h4>Comparisons </h4>
<ul>
<li><a href="./Reference/equal_to.html">equal_to</a>
<li><a href="./Reference/not_equal_to.html">not_equal_to</a>
<li><a href="./Reference/less.html">less</a>
<li><a href="./Reference/greater.html">greater</a>
<li><a href="./Reference/less_equal.html">less_equal</a>
<li><a href="./Reference/greater_equal.html">greater_equal</a>
</ol>
<li>Logical operations
<ol>
<li><a href="./Reference/logical_or.html">logical_or</a>
<li><a href="./Reference/logical_and.html">logical_and</a>
<li><a href="./Reference/logical_not.html">logical_not</a>
</ol>
</ol>
</ol>
</ul>
<p>
<h4>Logical operations </h4>
<ul>
<li><a href="./Reference/or.html">or_</a>
<li><a href="./Reference/and.html">and_</a>
<li><a href="./Reference/not.html">not_</a>
</ul>
<p>
<h4>Bitwise operations </h4>
<ul>
<li>bitor_
<li>bitand_
<li>bitxor_
<li>shift_left
<li>shift_right
</ul>
<p>
<h4>Identity operations</h4>
<ul>
<li>identity
<li>project1st
<li>project2nd
<li>select1st
<li>select2nd
</ul>
<p><hr>
<a href="./Table_of_Content.html">Table of Content</a><br>Last edited July 17, 2002 8:46 am</body></html>
<a href="./Table_of_Contents.html">Table of Contents</a><br>Last edited March 10, 2003 6:39 am</body></html>

View File

@@ -2,7 +2,7 @@
<html><head><title>boost::mpl::Random Access Iterator</title>
<link rel="stylesheet" href="./mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="./Table_of_Content.html"><img src="./mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>Random Access Iterator</h1><h3>Description</h3>
<h1><a href="./Table_of_Contents.html"><img src="./mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>Random Access Iterator</h1><h3>Description</h3>
<p>
A Random Access Iterator is a <a href="./Bidirectional_Iterator.html">Bidirectional Iterator</a> that provides constant-time methods for moving forward and backward on a sequence in arbitrary-sized steps.
<p>
@@ -45,4 +45,4 @@ For any random access iterators <code>i</code> and <code>j</code> the following
<p>
<a href="./Random_Access_Sequence.html">Random Access Sequence</a>, <a href="./Bidirectional_Iterator.html">Bidirectional Iterator</a>
<p><hr>
<a href="./Table_of_Content.html">Table of Content</a><br>Last edited July 15, 2002 11:35 am</body></html>
<a href="./Table_of_Contents.html">Table of Contents</a><br>Last edited July 15, 2002 11:35 am</body></html>

View File

@@ -2,7 +2,7 @@
<html><head><title>boost::mpl::Random Access Sequence</title>
<link rel="stylesheet" href="./mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="./Table_of_Content.html"><img src="./mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>Random Access Sequence</h1><h3>Description</h3>
<h1><a href="./Table_of_Contents.html"><img src="./mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>Random Access Sequence</h1><h3>Description</h3>
<p>
A Random Access Sequence is a <a href="./Bidirectional_Sequence.html">Bidirectional Sequence</a> which provides iterators that satisfy the <a href="./Random_Access_Iterator.html">Random Access Iterator</a> requirements. A random access sequence provides amortized constant time access to arbitrary elements.
<p>
@@ -32,4 +32,4 @@ Random Access Sequence does not define any new expressions beyond those defined
<p>
<a href="./Bidirectional_Sequence.html">Bidirectional Sequence</a>, <a href="./Random_Access_Iterator.html">Random Access Iterator</a>
<p><hr>
<a href="./Table_of_Content.html">Table of Content</a><br>Last edited July 15, 2002 2:37 pm</body></html>
<a href="./Table_of_Contents.html">Table of Contents</a><br>Last edited July 15, 2002 2:37 pm</body></html>

View File

@@ -1,8 +1,8 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/advance</title>
<html><head><title>boost::mpl::advance</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>advance</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>advance</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
@@ -22,7 +22,7 @@ Returns an new iterator <code>i</code> such as <code>distance&lt; Iterator,i &gt
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/advance.hpp">boost/mpl/advance.hpp</a>"
#include "<a href="../../../../../boost/mpl/advance.hpp">boost/mpl/advance.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -59,4 +59,4 @@ BOOST_MPL_ASSERT_IS_SAME(iter2, first);
<p>
<a href="../Iterators.html">Iterators</a>, <a href="../Sequence.html">Sequence</a>, <code><a href="../Reference/distance.html">distance</a></code>, <code><a href="../Reference/begin.html">begin</a></code>, <code><a href="../Reference/end.html">end</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 17, 2002 6:38 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited July 17, 2002 6:38 am</body></html>

View File

@@ -0,0 +1,62 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::and_</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>and_</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
typename F1
, typename F2
, typename F3 = true_
...
, typename Fn = true_
&gt;
struct and_
{
typedef <em>unspecified</em> type;
};
</pre>
<p>
<h3>Description</h3>
<p>
Returns the result of short-circuit <em>logical and</em> (<code>&amp;&amp;</code>) operation on its arguments.
<p>
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../boost/mpl/and.hpp">boost/mpl/and.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
<table border="1">
<tr><th>&nbsp;Parameter&nbsp;</th><th>&nbsp;Requirement&nbsp;</th><th>&nbsp;Description &nbsp;</th></tr>
<tr><td><code>F1, F2, .., Fn</code></td><td>A model of nullary <a href="../Metafunction.html">Metafunction</a></td><td></td></tr>
</table>
<p>
<h3>Expression semantics</h3>
<p>
<table border="1">
<tr><th>&nbsp;Expression&nbsp;</th><th>&nbsp;Expression&nbsp;type&nbsp;</th><th>&nbsp;Precondition&nbsp;</th><th>&nbsp;Semantics&nbsp;</th><th>&nbsp;Postcondition&nbsp;</th></tr>
<tr><td><code>typedef and_&lt;f1,f2,..,fn&gt;::type c;</code></td><td>A model of <code>bool</code> <a href="../Integral_Constant.html">Integral Constant</a></td><td></td><td>Returns <code>false_</code> if either of <code>f1::type::value, f2::type::value, .., fn::type::value</code> expressions evaluates to <code>false</code>, and <code>true_</code> otherwise; guarantees left-to-right evaluation; moreover, the operands subsequent to the first <code>fi</code> metafunction that evaluates to <code>false</code> are not evaluated.</td><td></td></tr>
</table>
<p>
<h3>Example</h3>
<p>
<pre>
<span class="cxx-comment">// will generate compile-time error if invoked with T == any fundamental type</span>
template&lt; typename T &gt; struct fail
{
typedef typename T::nonexistent type;
};
<p>
BOOST_STATIC_ASSERT((and_&lt; true_,false_ &gt;::type::value == false));
BOOST_STATIC_ASSERT((and_&lt; false_,fail&lt;int&gt; &gt;::type::value == false)); <span class="cxx-comment">// OK, fail&lt;int&gt; is never invoked</span>
BOOST_STATIC_ASSERT((and_&lt; true_,false_,fail&lt;int&gt; &gt;::type::value == false)); <span class="cxx-comment">// OK too</span>
</pre>
<p>
<h3>See also</h3>
<p>
<a href="../Metafunctions.html">Metafunctions</a>, <code><a href="../Reference/or.html">or_</a></code>, <code><a href="../Reference/not.html">not_</a></code>
<p><hr>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited March 10, 2003 1:21 am</body></html>

View File

@@ -1,13 +1,13 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/at</title>
<html><head><title>boost::mpl::at</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>at</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>at</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
typename N
, typename Sequence
typename Sequence
, typename N
&gt;
struct at
{
@@ -22,21 +22,21 @@ Returns a type identical to the <code>N</code>-th element from the beginning of
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/at.hpp">boost/mpl/at.hpp</a>"
#include "<a href="../../../../../boost/mpl/at.hpp">boost/mpl/at.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
<table border="1">
<tr><th>&nbsp;Parameter&nbsp;</th><th>&nbsp;Requirement&nbsp;</th><th>&nbsp;Description &nbsp;</th></tr>
<tr><td><code>N</code></td><td>A model of <a href="../Integral_Constant.html">Integral Constant</a></td><td>The offset from the beginning of the sequence that specifies the element to be retrieved. </td></tr>
<tr><td><code>Sequence</code></td><td>A model of <a href="../Forward_Sequence.html">Forward Sequence</a></td><td>A sequence to be examined. </td></tr>
<tr><td><code>N</code></td><td>A model of <a href="../Integral_Constant.html">Integral Constant</a></td><td>The offset from the beginning of the sequence that specifies the element to be retrieved. </td></tr>
</table>
<p>
<h3>Expression semantics</h3>
<p>
<table border="1">
<tr><th>&nbsp;Expression&nbsp;</th><th>&nbsp;Expression&nbsp;type&nbsp;</th><th>&nbsp;Precondition&nbsp;</th><th>&nbsp;Semantics&nbsp;</th><th>&nbsp;Postcondition&nbsp;</th></tr>
<tr><td><code>typedef at&lt;N,Sequence&gt;::type t;</code></td><td>A type</td><td><code>0 &lt;= N::value &lt; size&lt;Sequence&gt;::type::value</code></td><td>Equivalent to <code>typedef advance&lt; begin&lt;Sequence&gt;::type,N &gt;::type::type t;</code></td><td></td></tr>
<tr><td><code>typedef at&lt;Sequence,N&gt;::type t;</code></td><td>A type</td><td><code>0 &lt;= N::value &lt; size&lt;Sequence&gt;::type::value</code></td><td>Equivalent to <code>typedef advance&lt; begin&lt;Sequence&gt;::type,N &gt;::type::type t;</code></td><td></td></tr>
</table>
<p>
<h3>Complexity</h3>
@@ -47,13 +47,13 @@ Depends on the implementation of the particular sequence it is applied to. Linea
<p>
<pre>
typedef <a href="../Reference/range_c.html">range_c</a>&lt;long,10,50&gt; range;
BOOST_STATIC_ASSERT(at&lt; int_c&lt;0&gt;, range &gt;::type::value == 10);
BOOST_STATIC_ASSERT(at&lt; int_c&lt;10&gt;, range &gt;::type::value == 20);
BOOST_STATIC_ASSERT(at&lt; int_c&lt;40&gt;, range &gt;::type::value == 50);
BOOST_STATIC_ASSERT(at&lt; range, int_&lt;0&gt; &gt;::type::value == 10);
BOOST_STATIC_ASSERT(at&lt; range, int_&lt;10&gt; &gt;::type::value == 20);
BOOST_STATIC_ASSERT(at&lt; range, int_&lt;40&gt; &gt;::type::value == 50);
</pre>
<p>
<h3>See also</h3>
<p>
<a href="../Forward_Sequence.html">Forward Sequence</a>, <code><a href="../Reference/at_c.html">at_c</a></code>, <code><a href="../Reference/front.html">front</a></code>, <code><a href="../Reference/back.html">back</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 17, 2002 3:49 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited March 12, 2003 6:26 am</body></html>

View File

@@ -1,13 +1,13 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/at c</title>
<html><head><title>boost::mpl::at_c</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>at_c</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>at_c</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
long n
, typename Sequence
typename Sequence
, long n
&gt;
struct at_c
{
@@ -17,26 +17,26 @@ struct at_c
<p>
<h3>Description</h3>
<p>
Returns a type identical to the <code>n</code>-th element from the beginning of the sequence. <code>at_c&lt;n,Sequence&gt;::type</code> is a shorcut notation for <code>at&lt; integral_c&lt;long,n&gt;, Sequence&gt;::type</code>.
Returns a type identical to the <code>n</code>-th element from the beginning of the sequence. <code>at_c&lt;Sequence,n&gt;::type</code> is a shorcut notation for <code>at&lt; Sequence, integral_c&lt;long,n&gt; &gt;::type</code>.
<p>
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/at.hpp">boost/mpl/at.hpp</a>"
#include "<a href="../../../../../boost/mpl/at.hpp">boost/mpl/at.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
<table border="1">
<tr><th>&nbsp;Parameter&nbsp;</th><th>&nbsp;Requirement&nbsp;</th><th>&nbsp;Description &nbsp;</th></tr>
<tr><td><code>n</code></td><td>An compile-time integral constant</td><td>An offset from the beginning of the sequence that specifies the element to be retrieved. </td></tr>
<tr><td><code>Sequence</code></td><td>A model of <a href="../Forward_Sequence.html">Forward Sequence</a></td><td>A sequence being examined. </td></tr>
<tr><td><code>n</code></td><td>An compile-time integral constant</td><td>An offset from the beginning of the sequence that specifies the element to be retrieved. </td></tr>
</table>
<p>
<h3>Expression semantics</h3>
<p>
<table border="1">
<tr><th>&nbsp;Expression&nbsp;</th><th>&nbsp;Expression&nbsp;type&nbsp;</th><th>&nbsp;Precondition&nbsp;</th><th>&nbsp;Semantics&nbsp;</th><th>&nbsp;Postcondition&nbsp;</th></tr>
<tr><td><code>typedef at_c&lt;n,Sequence&gt;::type t;</code></td><td>A type</td><td><code>0 &lt;= n &lt; size&lt;Sequence&gt;::type::value</code></td><td>Equivalent to <code>typedef at&lt; integral_c&lt;long,n&gt;, Sequence&gt;::type t;</code></td><td></td></tr>
<tr><td><code>typedef at_c&lt;Sequence,n&gt;::type t;</code></td><td>A type</td><td><code>0 &lt;= n &lt; size&lt;Sequence&gt;::type::value</code></td><td>Equivalent to <code>typedef at&lt; Sequence, integral_c&lt;long,n&gt; &gt;::type t;</code></td><td></td></tr>
</table>
<p>
<h3>Complexity</h3>
@@ -47,13 +47,13 @@ Depends on the implementation of the particular sequence it is applied to. Linea
<p>
<pre>
typedef <a href="../Reference/range_c.html">range_c</a>&lt;long,10,50&gt; range;
BOOST_STATIC_ASSERT(at_c&lt;0,range&gt;::type::value == 10);
BOOST_STATIC_ASSERT(at_c&lt;10,range&gt;::type::value == 20);
BOOST_STATIC_ASSERT(at_c&lt;40,range&gt;::type::value == 50);
BOOST_STATIC_ASSERT(at_c&lt;range,0&gt;::type::value == 10);
BOOST_STATIC_ASSERT(at_c&lt;range,10&gt;::type::value == 20);
BOOST_STATIC_ASSERT(at_c&lt;range,40&gt;::type::value == 50);
</pre>
<p>
<h3>See also</h3>
<p>
<a href="../Forward_Sequence.html">Forward Sequence</a>, <code><a href="../Reference/at.html">at</a></code>, <code><a href="../Reference/front.html">front</a></code>, <code><a href="../Reference/back.html">back</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 17, 2002 3:50 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited October 21, 2002 4:09 am</body></html>

View File

@@ -1,8 +1,8 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/back</title>
<html><head><title>boost::mpl::back</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>back</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>back</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
@@ -21,7 +21,7 @@ Returns a type identical to the last element in the sequence, that is, the eleme
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/back.hpp">boost/mpl/back.hpp</a>"
#include "<a href="../../../../../boost/mpl/back.hpp">boost/mpl/back.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -61,4 +61,4 @@ BOOST_STATIC_ASSERT(back&lt;range3&gt;::type::value == -1);
<p>
<a href="../Forward_Sequence.html">Forward Sequence</a>, <code><a href="../Reference/front.html">front</a></code>, <code><a href="../Reference/at.html">at</a></code>, <code><a href="../Reference/end.html">end</a></code>, <code><a href="../Reference/push_back.html">push_back</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 17, 2002 3:47 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited July 17, 2002 3:47 am</body></html>

View File

@@ -1,8 +1,8 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/begin</title>
<html><head><title>boost::mpl::begin</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>begin</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>begin</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
@@ -21,7 +21,7 @@ Returns an iterator that points to the first element of the sequence.
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/begin_end.hpp">boost/mpl/begin_end.hpp</a>"
#include "<a href="../../../../../boost/mpl/begin_end.hpp">boost/mpl/begin_end.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -53,4 +53,4 @@ BOOST_STATIC_ASSERT((boost::is_same&lt;iter::type,unsigned char&gt;::value));
<p>
<a href="../Iterators.html">Iterators</a>, <a href="../Sequence.html">Sequence</a>, <code><a href="../Reference/end.html">end</a></code>, <code><a href="../Reference/size.html">size</a></code>, <code><a href="../Reference/empty.html">empty</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 22, 2002 2:03 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited July 22, 2002 2:03 am</body></html>

View File

@@ -1,8 +1,8 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/clear</title>
<html><head><title>boost::mpl::clear</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>clear</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>clear</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
@@ -21,7 +21,7 @@ Returns an empty sequence that preserves all the functional and performance char
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/clear.hpp">boost/mpl/clear.hpp</a>"
#include "<a href="../../../../../boost/mpl/clear.hpp">boost/mpl/clear.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -57,4 +57,4 @@ BOOST_STATIC_ASSERT(empty&lt;nothing&gt;::type::value);
<p>
<a href="../Extensible_Sequence.html">Extensible Sequence</a>, <code><a href="../Reference/erase.html">erase</a></code>, <code><a href="../Reference/empty.html">empty</a></code>, <code><a href="../Reference/begin.html">begin</a></code>, <code><a href="../Reference/end.html">end</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 17, 2002 3:58 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited July 17, 2002 3:58 am</body></html>

View File

@@ -1,8 +1,8 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/contains</title>
<html><head><title>boost::mpl::contains</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>contains</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>contains</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
@@ -17,12 +17,12 @@ struct contains
<p>
<h3>Description</h3>
<p>
Returns <code>true_c</code> if one or more elements in <code>Sequence</code> are identical to <code>T</code>, and <code>false_c</code> otherwise.
Returns <code>true_</code> if one or more elements in <code>Sequence</code> are identical to <code>T</code>, and <code>false_</code> otherwise.
<p>
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/contains.hpp">boost/mpl/contains.hpp</a>"
#include "<a href="../../../../../boost/mpl/contains.hpp">boost/mpl/contains.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -36,7 +36,7 @@ Returns <code>true_c</code> if one or more elements in <code>Sequence</code> are
<p>
<table border="1">
<tr><th>&nbsp;Expression&nbsp;</th><th>&nbsp;Expression&nbsp;type&nbsp;</th><th>&nbsp;Precondition&nbsp;</th><th>&nbsp;Semantics&nbsp;</th><th>&nbsp;Postcondition&nbsp;</th></tr>
<tr><td><code>typedef contains&lt;Sequence,T&gt;::type c;</code></td><td>A model of <code>bool</code> <a href="../Integral_Constant.html">Integral Constant</a></td><td></td><td>Equivalent to <code>typedef <a href="../Reference/logical_not.html">logical_not</a>&lt; is_same&lt; <a href="../Reference/find.html">find</a>&lt;Sequence,T&gt;::type, <a href="../Reference/end.html">end</a>&lt;Sequence&gt;::type &gt; &gt;::type c</code>; </td></tr>
<tr><td><code>typedef contains&lt;Sequence,T&gt;::type c;</code></td><td>A model of <code>bool</code> <a href="../Integral_Constant.html">Integral Constant</a></td><td></td><td>Equivalent to <code>typedef <a href="../Reference/not.html">not_</a>&lt; is_same&lt; <a href="../Reference/find.html">find</a>&lt;Sequence,T&gt;::type, <a href="../Reference/end.html">end</a>&lt;Sequence&gt;::type &gt; &gt;::type c</code>; </td></tr>
</table>
<p>
<h3>Complexity</h3>
@@ -55,4 +55,4 @@ BOOST_STATIC_ASSERT(!result::value);
<p>
<a href="../Algorithms.html">Algorithms</a>, <code><a href="../Reference/find.html">find</a></code>, <code><a href="../Reference/find_if.html">find_if</a></code>, <code><a href="../Reference/count.html">count</a></code>, <code><a href="../Reference/count_if.html">count_if</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 17, 2002 4:48 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited March 10, 2003 5:33 am</body></html>

View File

@@ -1,8 +1,8 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/copy</title>
<html><head><title>boost::mpl::copy</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>copy</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>copy</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
@@ -23,7 +23,7 @@ struct copy
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/copy.hpp">boost/mpl/copy.hpp</a>"
#include "<a href="../../../../../boost/mpl/copy.hpp">boost/mpl/copy.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -67,4 +67,4 @@ BOOST_STATIC_ASSERT((<a href="../Reference/equal.html">equal</a>&lt; result,<a h
<p>
<a href="../Algorithms.html">Algorithms</a>, <code><a href="../Reference/copy_if.html">copy_if</a></code>, <code><a href="../Reference/copy_backward.html">copy_backward</a></code>, <code><a href="../Reference/copy_backward_if.html">copy_backward_if</a></code>, <code><a href="../Reference/fold.html">fold</a></code>, <code><a href="../Reference/fold_backward.html">fold_backward</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 19, 2002 2:10 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited July 19, 2002 2:10 am</body></html>

View File

@@ -1,8 +1,8 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/copy backward</title>
<html><head><title>boost::mpl::copy_backward</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>copy_backward</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>copy_backward</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
@@ -23,7 +23,7 @@ struct copy_backward
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/copy_backward.hpp">boost/mpl/copy_backward.hpp</a>"
#include "<a href="../../../../../boost/mpl/copy_backward.hpp">boost/mpl/copy_backward.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -67,4 +67,4 @@ BOOST_STATIC_ASSERT((<a href="../Reference/equal.html">equal</a>&lt; result,<a h
<p>
<a href="../Algorithms.html">Algorithms</a>, <code><a href="../Reference/copy_backward_if.html">copy_backward_if</a></code>, <code><a href="../Reference/copy.html">copy</a></code>, <code><a href="../Reference/copy_if.html">copy_if</a></code>, <code><a href="../Reference/fold.html">fold</a></code>, <code><a href="../Reference/fold_backward.html">fold_backward</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 19, 2002 2:11 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited July 19, 2002 2:11 am</body></html>

View File

@@ -1,8 +1,8 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/copy backward if</title>
<html><head><title>boost::mpl::copy_backward_if</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>copy_backward_if</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>copy_backward_if</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
@@ -24,7 +24,7 @@ Returns the result of the successive application of <code>BinaryOp</code> to the
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/copy_backward_if.hpp">boost/mpl/copy_backward_if.hpp</a>"
#include "<a href="../../../../../boost/mpl/copy_backward_if.hpp">boost/mpl/copy_backward_if.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -55,8 +55,8 @@ typedef <a href="../Reference/list_c.html">list_c</a>&lt;int,0,1,2,3,4&gt;::type
typedef copy_backward_if&lt;
numbers
, <a href="../Reference/list_c.html">list_c</a>&lt;int&gt;
, <a href="../Reference/push_front.html">push_front</a>&lt;_,_&gt;
, <a href="../Reference/less.html">less</a>&lt;_,int_c&lt;5&gt; &gt;
, <a href="../Reference/push_front.html">push_front</a>&lt;_1,_2&gt;
, <a href="../Reference/less.html">less</a>&lt;_1,int_&lt;5&gt; &gt;
&gt;::type result;
<p>
BOOST_STATIC_ASSERT(<a href="../Reference/size.html">size</a>&lt;result&gt;::value == 5);
@@ -67,4 +67,4 @@ BOOST_STATIC_ASSERT((<a href="../Reference/equal.html">equal</a>&lt;result,answe
<p>
<a href="../Algorithms.html">Algorithms</a>, <code><a href="../Reference/copy_backward.html">copy_backward</a></code>, <code><a href="../Reference/copy_if.html">copy_if</a></code>, <code><a href="../Reference/copy.html">copy</a></code>, <code><a href="../Reference/fold.html">fold</a></code>, <code><a href="../Reference/fold_backward.html">fold_backward</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 19, 2002 2:09 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited March 12, 2003 6:29 am</body></html>

View File

@@ -1,8 +1,8 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/copy if</title>
<html><head><title>boost::mpl::copy_if</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>copy_if</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>copy_if</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
@@ -24,7 +24,7 @@ Returns the result of the successive application of <code>BinaryOp</code> to the
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/copy_if.hpp">boost/mpl/copy_if.hpp</a>"
#include "<a href="../../../../../boost/mpl/copy_if.hpp">boost/mpl/copy_if.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -55,8 +55,8 @@ typedef <a href="../Reference/list_c.html">list_c</a>&lt;int,0,1,2,3,4&gt;::type
typedef copy_if&lt;
numbers
, <a href="../Reference/vector_c.html">vector_c</a>&lt;int&gt;
, <a href="../Reference/push_back.html">push_back</a>&lt;_,_&gt;
, <a href="../Reference/less.html">less</a>&lt;_,int_c&lt;5&gt; &gt;
, <a href="../Reference/push_back.html">push_back</a>&lt;_1,_2&gt;
, <a href="../Reference/less.html">less</a>&lt;_1,int_&lt;5&gt; &gt;
&gt;::type result;
<p>
BOOST_STATIC_ASSERT(<a href="../Reference/size.html">size</a>&lt;result&gt;::value == 5);
@@ -67,4 +67,4 @@ BOOST_STATIC_ASSERT((<a href="../Reference/equal.html">equal</a>&lt;result,answe
<p>
<a href="../Algorithms.html">Algorithms</a>, <code><a href="../Reference/copy.html">copy</a></code>, <code><a href="../Reference/copy_backward_if.html">copy_backward_if</a></code>, <code><a href="../Reference/copy_backward.html">copy_backward</a></code>, <code><a href="../Reference/fold.html">fold</a></code>, <code><a href="../Reference/iter_fold.html">iter_fold</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 19, 2002 2:10 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited March 12, 2003 6:30 am</body></html>

View File

@@ -1,8 +1,8 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/count</title>
<html><head><title>boost::mpl::count</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>count</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>count</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
@@ -22,7 +22,7 @@ Returns the number of elements in a <code>Sequence</code> that are identical to
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/count_if.hpp">boost/mpl/count_if.hpp</a>"
#include "<a href="../../../../../boost/mpl/count.hpp">boost/mpl/count.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -57,4 +57,4 @@ BOOST_STATIC_ASSERT((<a href="../Reference/distance.html">distance</a>&lt; begin
<p>
<a href="../Algorithms.html">Algorithms</a>, <code><a href="../Reference/count_if.html">count_if</a></code>, <code><a href="../Reference/find.html">find</a></code>, <code><a href="../Reference/find_if.html">find_if</a></code>, <code><a href="../Reference/contains.html">contains</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 17, 2002 4:32 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited December 12, 2002 2:05 am</body></html>

View File

@@ -1,8 +1,8 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/count if</title>
<html><head><title>boost::mpl::count_if</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>count_if</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>count_if</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
@@ -22,7 +22,7 @@ Returns the number of elements in a <code>Sequence</code> that satisfy the predi
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/count_if.hpp">boost/mpl/count_if.hpp</a>"
#include "<a href="../../../../../boost/mpl/count_if.hpp">boost/mpl/count_if.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -36,7 +36,7 @@ Returns the number of elements in a <code>Sequence</code> that satisfy the predi
<p>
<table border="1">
<tr><th>&nbsp;Expression&nbsp;</th><th>&nbsp;Expression&nbsp;type&nbsp;</th><th>&nbsp;Precondition&nbsp;</th><th>&nbsp;Semantics&nbsp;</th><th>&nbsp;Postcondition&nbsp;</th></tr>
<tr><td><code>typedef count_if&lt;Sequence,Pred&gt;::type n;</code></td><td>A model of <a href="../Integral_Constant.html">Integral Constant</a></td><td></td><td>Equivalent to <code> typedef lambda&lt;Pred&gt;::type pred; typedef <a href="../Reference/fold.html">fold</a>&lt; Sequence,integral_c&lt;unsigned long,0&gt;,if_&lt;pred,<a href="../Reference/next.html">next</a>&lt;_1&gt;,_1&gt; &gt;::type n;</code></td><td></td></tr>
<tr><td><code>typedef count_if&lt;Sequence,Pred&gt;::type n;</code></td><td>A model of <a href="../Integral_Constant.html">Integral Constant</a></td><td></td><td>Equivalent to <code> typedef lambda&lt;Pred&gt;::type pred; typedef <a href="../Reference/fold.html">fold</a>&lt; Sequence,integral_c&lt;unsigned long,0&gt;,if_&lt;pred,next&lt;_1&gt;,_1&gt; &gt;::type n;</code></td><td></td></tr>
</table>
<p>
<p>
@@ -58,4 +58,4 @@ BOOST_STATIC_ASSERT((count_if&lt; types,boost::is_same&lt;_,void&gt; &gt;::type:
<p>
<a href="../Algorithms.html">Algorithms</a>, <code><a href="../Reference/count.html">count</a></code>, <code><a href="../Reference/find_if.html">find_if</a></code>, <code><a href="../Reference/find.html">find</a></code>, <code><a href="../Reference/contains.html">contains</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 17, 2002 4:32 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited July 17, 2002 4:32 am</body></html>

View File

@@ -0,0 +1,56 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::deref</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>deref</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
typename Iterator
&gt;
struct deref
{
typedef typename Iterator::type type;
};
</pre>
<p>
<h3>Description</h3>
<p>
Dereferences an iterator.
<p>
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../boost/mpl/deref.hpp">boost/mpl/deref.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
<table border="1">
<tr><th>&nbsp;Parameter&nbsp;</th><th>&nbsp;Requirement&nbsp;</th><th>&nbsp;Description &nbsp;</th></tr>
<tr><td><code>Iterator</code></td><td>A model of <a href="../Trivial_Iterator.html">Trivial Iterator</a></td><td>An iterator to be dereferenced. </td></tr>
</table>
<p>
<h3>Expression semantics</h3>
<p>
<table border="1">
<tr><th>&nbsp;Expression&nbsp;</th><th>&nbsp;Expression&nbsp;type&nbsp;</th><th>&nbsp;Precondition&nbsp;</th><th>&nbsp;Semantics&nbsp;</th><th>&nbsp;Postcondition&nbsp;</th></tr>
<tr><td><code>typedef deref&lt;Iterator&gt;::type t;</code></td><td>A type</td><td></td><td>Equivalent to <code>typedef Iterator::type t;</code>.</td><td><code>Iterator</code> is dereferenceable </td></tr>
</table>
<p>
<h3>Complexity</h3>
<p>
Amortized constant time.
<p>
<h3>Example</h3>
<p>
<pre>
typedef <a href="../Reference/list.html">list</a>&lt;char,short,int,long&gt; types;
typedef <a href="../Reference/begin.html">begin</a>&lt;types&gt;::type iter;
BOOST_STATIC_ASSERT(boost::is_same&lt; deref&lt;iter&gt;::type,char &gt;::value));
</pre>
<p>
<h3>See also</h3>
<p>
<a href="../Iterators.html">Iterators</a>, <code><a href="../Reference/begin.html">begin</a>/<a href="../Reference/end.html">end</a></code>
<p><hr>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited March 10, 2003 5:30 am</body></html>

View File

@@ -1,8 +1,8 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/distance</title>
<html><head><title>boost::mpl::distance</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>distance</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>distance</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
@@ -22,7 +22,7 @@ Finds the distance between <code>First</code> and <code>Last</code>, that is, an
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/distance.hpp">boost/mpl/distance.hpp</a>"
#include "<a href="../../../../../boost/mpl/distance.hpp">boost/mpl/distance.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -53,4 +53,4 @@ BOOST_STATIC_ASSERT((distance&lt; begin&lt;range&gt;::type,end&lt;range&gt;::typ
<p>
<a href="../Iterators.html">Iterators</a>, <a href="../Sequence.html">Sequence</a>, <code><a href="../Reference/advance.html">advance</a></code>, <code><a href="../Reference/begin.html">begin</a></code>, <code><a href="../Reference/end.html">end</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 17, 2002 6:47 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited July 17, 2002 6:47 am</body></html>

View File

@@ -1,16 +1,16 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/divides</title>
<html><head><title>boost::mpl::divides</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>divides</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>divides</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
typename T1
, typaname T2
, typaname T3 = integral_c&lt;int,1&gt;
, typename T2
, typename T3 = integral_c&lt;int,1&gt;
, ...
, typaname Tn = integral_c&lt;int,1&gt;
, typename Tn = integral_c&lt;int,1&gt;
&gt;
struct divides
{
@@ -25,7 +25,7 @@ Returns the quotient of its arguments [<a href="#1">1</a>].
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/arithmetic/divides.hpp">boost/mpl/arithmetic/divides.hpp</a>"
#include "<a href="../../../../../boost/mpl/divides.hpp">boost/mpl/divides.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -61,4 +61,4 @@ BOOST_MPL_ASSERT_IS_SAME(quot::value_type, long);
<p>
<a href="../Metafunctions.html">Metafunctions</a>, <code><a href="../Reference/multiplies.html">multiplies</a></code>, <code><a href="../Reference/modulus.html">modulus</a></code>, <code><a href="../Reference/plus.html">plus</a></code>, <code><a href="../Reference/minus.html">minus</a></code>, <code><a href="../Reference/negate.html">negate</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 17, 2002 4:08 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited March 10, 2003 6:32 am</body></html>

View File

@@ -1,8 +1,8 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/empty</title>
<html><head><title>boost::mpl::empty</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>empty</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>empty</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
@@ -21,7 +21,7 @@ Returns an <a href="../Integral_Constant.html">Integral Constant</a> <code>c</co
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/empty.hpp">boost/mpl/empty.hpp</a>"
#include "<a href="../../../../../boost/mpl/empty.hpp">boost/mpl/empty.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -56,4 +56,4 @@ BOOST_STATIC_ASSERT(!empty&lt;types&gt;::value)
<p>
<a href="../Sequence.html">Sequence</a>, <code><a href="../Reference/size.html">size</a></code>, <code><a href="../Reference/begin.html">begin</a></code>, <code><a href="../Reference/end.html">end</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 17, 2002 3:52 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited July 17, 2002 3:52 am</body></html>

View File

@@ -1,8 +1,8 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/end</title>
<html><head><title>boost::mpl::end</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>end</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>end</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
@@ -21,7 +21,7 @@ Returns the past-the-end iterator to the sequence.
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/begin_end.hpp">boost/mpl/begin_end.hpp</a>"
#include "<a href="../../../../../boost/mpl/begin_end.hpp">boost/mpl/begin_end.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -54,4 +54,4 @@ BOOST_STATIC_ASSERT((boost::is_same&lt;first::next,last&gt;::value));
<p>
<a href="../Iterators.html">Iterators</a>, <a href="../Sequence.html">Sequence</a>, <code><a href="../Reference/begin.html">begin</a></code>, <code><a href="../Reference/size.html">size</a></code>, <code><a href="../Reference/empty.html">empty</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 22, 2002 4:30 pm</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited July 22, 2002 4:30 pm</body></html>

View File

@@ -1,14 +1,14 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/equal</title>
<html><head><title>boost::mpl::equal</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>equal</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>equal</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
typename Sequence1
, typename Sequence2
, typename Pred = is_same&lt;_,_&gt;
, typename Pred = is_same&lt;_1,_2&gt;
&gt;
struct equal
{
@@ -18,12 +18,12 @@ struct equal
<p>
<h3>Description</h3>
<p>
Returns <code>true_c</code> if the two sequences <code>Sequence1</code> and <code>Sequence2</code> are identical when compared element-by-element, and otherwise returns <code>false_c</code>.
Returns <code>true_</code> if the two sequences <code>Sequence1</code> and <code>Sequence2</code> are identical when compared element-by-element, and otherwise returns <code>false_</code>.
<p>
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/equal.hpp">boost/mpl/equal.hpp</a>"
#include "<a href="../../../../../boost/mpl/equal.hpp">boost/mpl/equal.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -56,4 +56,4 @@ BOOST_STATIC_ASSERT((equal&lt;s1,s2&gt;::type::value));
<p>
<a href="../Algorithms.html">Algorithms</a>, <code><a href="../Reference/count.html">count</a></code>, <code><a href="../Reference/count_if.html">count_if</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 17, 2002 4:54 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited March 10, 2003 5:39 am</body></html>

View File

@@ -1,13 +1,13 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/equal to</title>
<html><head><title>boost::mpl::equal_to</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>equal_to</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>equal_to</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
typename T1
, typaname T2
, typename T2
&gt;
struct equal_to
{
@@ -17,12 +17,12 @@ struct equal_to
<p>
<h3>Description</h3>
<p>
Returns <code>true_c</code> if <code>T1::value == T2::value</code> and <code>false_c</code> otherwise [<a href="#1">1</a>].
Returns <code>true_</code> if <code>T1::value == T2::value</code> and <code>false_</code> otherwise [<a href="#1">1</a>].
<p>
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/comparison/equal_to.hpp">boost/mpl/comparison/equal_to.hpp</a>"
#include "<a href="../../../../../boost/mpl/equal_to.hpp">boost/mpl/equal_to.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -35,7 +35,7 @@ Returns <code>true_c</code> if <code>T1::value == T2::value</code> and <code>fal
<p>
<table border="1">
<tr><th>&nbsp;Expression&nbsp;</th><th>&nbsp;Expression&nbsp;type&nbsp;</th><th>&nbsp;Precondition&nbsp;</th><th>&nbsp;Semantics&nbsp;</th><th>&nbsp;Postcondition&nbsp;</th></tr>
<tr><td><code>typedef equal_to&lt;t1,t2&gt;::type c;</code></td><td>A model of <code>bool</code> <a href="../Integral_Constant.html">Integral Constant</a></td><td></td><td>Equivalent to <code>typedef bool_c&lt;(t1::value == t2::value)&gt; c;</code></td><td></td></tr>
<tr><td><code>typedef equal_to&lt;t1,t2&gt;::type c;</code></td><td>A model of <code>bool</code> <a href="../Integral_Constant.html">Integral Constant</a></td><td></td><td>Equivalent to <code>typedef bool_&lt;(t1::value == t2::value)&gt; c;</code></td><td></td></tr>
</table>
<p>
<h3>Complexity</h3>
@@ -46,8 +46,8 @@ Amortized constant time.
<p>
<pre>
typedef <a href="../Reference/list_c.html">list_c</a>&lt;int,1,2,3,5,7,12,19,31&gt; fibonacci;
typedef <a href="../Reference/find_if.html">find_if</a>&lt; fibonacci, equal_to&lt;_,int_c&lt;12&gt; &gt; &gt;::type iter;
BOOST_STATIC_ASSERT(equal_to&lt; <a href="../Reference/distance.html">distance</a>&lt; <a href="../Reference/begin.html">begin</a>&lt;fibonacci&gt;::type, iter &gt;::type, int_c&lt;5&gt; &gt;::type::value));
typedef <a href="../Reference/find_if.html">find_if</a>&lt; fibonacci, equal_to&lt;_1,int_&lt;12&gt; &gt; &gt;::type iter;
BOOST_STATIC_ASSERT(equal_to&lt; <a href="../Reference/distance.html">distance</a>&lt; <a href="../Reference/begin.html">begin</a>&lt;fibonacci&gt;::type, iter &gt;::type, int_&lt;5&gt; &gt;::type::value));
</pre>
<p>
<h3>Notes</h3>
@@ -58,4 +58,4 @@ BOOST_STATIC_ASSERT(equal_to&lt; <a href="../Reference/distance.html">distance</
<p>
<a href="../Metafunctions.html">Metafunctions</a>, <code><a href="../Reference/not_equal_to.html">not_equal_to</a></code>, <code><a href="../Reference/less.html">less</a></code>, <code><a href="../Reference/less_equal.html">less_equal</a></code>, <code><a href="../Reference/greater.html">greater</a></code>, <code><a href="../Reference/greater_equal.html">greater_equal</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 17, 2002 4:13 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited March 10, 2003 6:26 am</body></html>

View File

@@ -1,8 +1,8 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/erase</title>
<html><head><title>boost::mpl::erase</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>erase</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>erase</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
@@ -23,7 +23,7 @@ struct erase
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/erase.hpp">boost/mpl/erase.hpp</a>"
#include "<a href="../../../../../boost/mpl/erase.hpp">boost/mpl/erase.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -62,4 +62,4 @@ BOOST_MPL_ASSERT_IS_SAME(result_iter, <a href="../Reference/end.html">end</a>&lt
<p>
<a href="../Extensible_Sequence.html">Extensible Sequence</a>, <code><a href="../Reference/pop_front.html">pop_front</a></code>, <code><a href="../Reference/pop_back.html">pop_back</a></code>, <code><a href="../Reference/insert.html">insert</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 17, 2002 3:59 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited July 17, 2002 3:59 am</body></html>

View File

@@ -1,8 +1,8 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/erase range</title>
<html><head><title>boost::mpl::erase_range</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>erase_range</h1><h3>Synopsis
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>erase_range</h1><h3>Synopsis
</h3>
<p>
<pre>
@@ -26,7 +26,7 @@ struct erase_range
</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/erase_range.hpp">boost/mpl/erase_range.hpp</a>"
#include "<a href="../../../../../boost/mpl/erase_range.hpp">boost/mpl/erase_range.hpp</a>"
</pre>
<p>
<h3>Parameters
@@ -60,4 +60,4 @@ struct erase_range
<p>
<a href="../Algorithms.html">Algorithms</a>, <code><a href="../Reference/erase.html">erase</a></code>, <code>erase_all</code>, <code>erase_if</code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited February 19, 2002 3:55 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited February 19, 2002 3:55 am</body></html>

View File

@@ -1,8 +1,8 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/filter view</title>
<html><head><title>boost::mpl::filter_view</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>filter_view</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>filter_view</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
@@ -11,6 +11,7 @@ template&lt;
&gt;
struct filter_view
{
<span class="cxx-comment">// unspecified</span>
};
</pre>
<p>
@@ -21,7 +22,7 @@ struct filter_view
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/filter_view.hpp">boost/mpl/filter_view.hpp</a>"
#include "<a href="../../../../../boost/mpl/filter_view.hpp">boost/mpl/filter_view.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -48,7 +49,7 @@ Finds the largest floating type in a sequence.
<p>
<pre>
typedef <a href="../Reference/list.html">list</a>&lt;int,float,long,float,char[50],long double,char&gt; types;
typedef max_element&lt;
typedef <a href="../Reference/max_element.html">max_element</a>&lt;
<a href="../Reference/transform_view.html">transform_view</a>&lt; filter_view&lt; types,boost::is_float&lt;_&gt; &gt;, size_of&lt;_&gt; &gt;
&gt;::type iter;
<p>
@@ -57,6 +58,6 @@ BOOST_STATIC_ASSERT((is_same&lt;iter::base::type,long double&gt;::value));
<p>
<h3>See also</h3>
<p>
<a href="../Sequences.html">Sequences</a>, <code><a href="../Reference/transform_view.html">transform_view</a></code>, <code><a href="../Reference/list.html">list</a></code>, <code>max_element</code>
<a href="../Sequences.html">Sequences</a>, <code><a href="../Reference/transform_view.html">transform_view</a></code>, <code><a href="../Reference/joint_view.html">joint_view</a></code>, <code><a href="../Reference/zip_view.html">zip_view</a></code>, <code><a href="../Reference/max_element.html">max_element</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 23, 2002 4:04 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited March 10, 2003 4:42 am</body></html>

View File

@@ -1,8 +1,8 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/find</title>
<html><head><title>boost::mpl::find</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>find</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>find</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
@@ -22,7 +22,7 @@ Finds the first occurrence of type <code>T</code> in a <code>Sequence</code>.
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/find.hpp">boost/mpl/find.hpp</a>"
#include "<a href="../../../../../boost/mpl/find.hpp">boost/mpl/find.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -48,11 +48,11 @@ Linear. At most <code>size&lt;Sequence&gt;::value</code> comparisons for identit
<pre>
typedef <a href="../Reference/vector.html">vector</a>&lt;char,int,unsigned,long,unsigned long&gt; types;
typedef find&lt;types,unsigned&gt;::type iter;
BOOST_STATIC_ASSERT(iter::position == 2);
BOOST_STATIC_ASSERT(iter::pos::value == 2);
</pre>
<p>
<h3>See also</h3>
<p>
<a href="../Algorithms.html">Algorithms</a>, <code><a href="../Reference/find_if.html">find_if</a></code>, <code><a href="../Reference/contains.html">contains</a></code>, <code><a href="../Reference/count.html">count</a></code>, <code><a href="../Reference/count_if.html">count_if</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 17, 2002 4:48 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited September 15, 2002 7:24 pm</body></html>

View File

@@ -1,8 +1,8 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/find if</title>
<html><head><title>boost::mpl::find_if</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>find_if</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>find_if</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
@@ -22,7 +22,7 @@ Finds the first element in a <code>Sequence</code> that satisfies the predicate
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/find_if.hpp">boost/mpl/find_if.hpp</a>"
#include "<a href="../../../../../boost/mpl/find_if.hpp">boost/mpl/find_if.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -48,11 +48,11 @@ Linear. At most <code>size&lt;Sequence&gt;::value</code> applications of <code>P
<pre>
typedef <a href="../Reference/vector.html">vector</a>&lt;char,int,unsigned,long,unsigned_long&gt; types;
typedef find_if&lt;types, is_same&lt;_1,unsigned&gt; &gt;::type iter;
BOOST_STATIC_ASSERT(iter::position == 2);
BOOST_STATIC_ASSERT(iter::pos::value == 2);
</pre>
<p>
<h3>See also</h3>
<p>
<a href="../Algorithms.html">Algorithms</a>, <code><a href="../Reference/find.html">find</a></code>, <code><a href="../Reference/contains.html">contains</a></code>, <code><a href="../Reference/count.html">count</a></code>, <code><a href="../Reference/count_if.html">count_if</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 17, 2002 4:48 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited September 15, 2002 7:24 pm</body></html>

View File

@@ -1,8 +1,8 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/fold</title>
<html><head><title>boost::mpl::fold</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>fold</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>fold</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
@@ -23,7 +23,7 @@ Returns the result of the successive application of binary <code>ForwardOp</code
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/fold.hpp">boost/mpl/fold.hpp</a>"
#include "<a href="../../../../../boost/mpl/fold.hpp">boost/mpl/fold.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -52,14 +52,14 @@ typedef <a href="../Reference/vector.html">vector</a>&lt;long,float,short,double
typedef typename fold&lt;
types
, integral_c&lt;long, 0&gt;
, if_&lt; is_float&lt;_2&gt;,<a href="../Reference/next.html">next</a>&lt;_1&gt;,_1 &gt;
, if_&lt; is_float&lt;_2&gt;,next&lt;_1&gt;,_1 &gt;
&gt;::type number_of_floats;
<p>
BOOST_STATIC_ASSERT(number_of_floats::value == 3);
BOOST_STATIC_ASSERT(number_of_floats::value == 4);
</pre>
<p>
<h3>See also</h3>
<p>
<a href="../Algorithms.html">Algorithms</a>, <code><a href="../Reference/fold_backward.html">fold_backward</a></code>, <code><a href="../Reference/iter_fold.html">iter_fold</a></code>, <code><a href="../Reference/iter_fold_backward.html">iter_fold_backward</a></code>, <code><a href="../Reference/copy.html">copy</a></code>, <code><a href="../Reference/copy_if.html">copy_if</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 19, 2002 2:12 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited December 12, 2002 4:42 pm</body></html>

View File

@@ -1,8 +1,8 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/fold backward</title>
<html><head><title>boost::mpl::fold_backward</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>fold_backward</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>fold_backward</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
@@ -24,7 +24,7 @@ Returns the result of the successive application of binary <code>BackwardOp</cod
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/fold_backward.hpp">boost/mpl/fold_backward.hpp</a>"
#include "<a href="../../../../../boost/mpl/fold_backward.hpp">boost/mpl/fold_backward.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -58,10 +58,10 @@ typedef <a href="../Reference/list_c.html">list_c</a>&lt;int,-1,-7,-2,-5&gt; neg
typedef fold_backward&lt;
numbers
, <a href="../Reference/list_c.html">list_c</a>&lt;int&gt;
, if_&lt; <a href="../Reference/less.html">less</a>&lt; _2,int_c&lt;0&gt; &gt;, push_front&lt;_1,_2,&gt;, _1 &gt;
, if_&lt; <a href="../Reference/less.html">less</a>&lt; _2,int_&lt;0&gt; &gt;, push_front&lt;_1,_2,&gt;, _1 &gt;
&gt;::type result;
<p>
BOOST_STATIC_ASSERT(<a href="../Reference/equal.html">equal</a>&lt; negatives,result,<a href="../Reference/equal_to.html">equal_to</a>&lt;_,_&gt; &gt;::type::value);
BOOST_STATIC_ASSERT(<a href="../Reference/equal.html">equal</a>&lt; negatives,result &gt;::type::value);
</pre>
<p>
<h3>Notes</h3>
@@ -72,4 +72,4 @@ BOOST_STATIC_ASSERT(<a href="../Reference/equal.html">equal</a>&lt; negatives,re
<p>
<a href="../Algorithms.html">Algorithms</a>, <code><a href="../Reference/fold.html">fold</a></code>, <code><a href="../Reference/iter_fold_backward.html">iter_fold_backward</a></code>, <code><a href="../Reference/iter_fold.html">iter_fold</a></code>, <code><a href="../Reference/copy.html">copy</a></code>, <code><a href="../Reference/copy_backward.html">copy_backward</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 19, 2002 1:58 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited March 12, 2003 6:30 am</body></html>

View File

@@ -1,8 +1,8 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/front</title>
<html><head><title>boost::mpl::front</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>front</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>front</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
@@ -21,7 +21,7 @@ Returns a type identical to the first element in the sequence.
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/front.hpp">boost/mpl/front.hpp</a>"
#include "<a href="../../../../../boost/mpl/front.hpp">boost/mpl/front.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -57,4 +57,4 @@ BOOST_MPL_ASSERT_IS_SAME(front&lt;types3&gt;::type, char);
<p>
<a href="../Forward_Sequence.html">Forward Sequence</a>, <code><a href="../Reference/back.html">back</a></code>, <code><a href="../Reference/at.html">at</a></code>, <code><a href="../Reference/push_front.html">push_front</a></code>, <code><a href="../Reference/begin.html">begin</a></code>, <code><a href="../Reference/empty.html">empty</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 17, 2002 3:48 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited July 17, 2002 3:48 am</body></html>

View File

@@ -1,13 +1,13 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/greater</title>
<html><head><title>boost::mpl::greater</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>greater</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>greater</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
typename T1
, typaname T2
, typename T2
&gt;
struct greater
{
@@ -17,12 +17,12 @@ struct greater
<p>
<h3>Description</h3>
<p>
Returns <code>true_c</code> if <code>T1::value &gt; T2::value</code> and <code>false_c</code> otherwise [<a href="#1">1</a>].
Returns <code>true_</code> if <code>T1::value &gt; T2::value</code> and <code>false_</code> otherwise [<a href="#1">1</a>].
<p>
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/comparison/greater.hpp">boost/mpl/comparison/greater.hpp</a>"
#include "<a href="../../../../../boost/mpl/greater.hpp">boost/mpl/greater.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -35,7 +35,7 @@ Returns <code>true_c</code> if <code>T1::value &gt; T2::value</code> and <code>f
<p>
<table border="1">
<tr><th>&nbsp;Expression&nbsp;</th><th>&nbsp;Expression&nbsp;type&nbsp;</th><th>&nbsp;Precondition&nbsp;</th><th>&nbsp;Semantics&nbsp;</th><th>&nbsp;Postcondition&nbsp;</th></tr>
<tr><td><code>typedef greater&lt;t1,t2&gt;::type c;</code></td><td>A model of <code>bool</code> <a href="../Integral_Constant.html">Integral Constant</a></td><td></td><td>Equivalent to <code>typedef bool_c&lt;(t1::value &gt; t2::value)&gt; c;</code></td><td></td></tr>
<tr><td><code>typedef greater&lt;t1,t2&gt;::type c;</code></td><td>A model of <code>bool</code> <a href="../Integral_Constant.html">Integral Constant</a></td><td></td><td>Equivalent to <code>typedef bool_&lt;(t1::value &gt; t2::value)&gt; c;</code></td><td></td></tr>
</table>
<p>
<h3>Complexity</h3>
@@ -46,7 +46,7 @@ Amortized constant time.
<p>
<pre>
typedef <a href="../Reference/list_c.html">list_c</a>&lt;int,1,2,3,5,7,12,19,31&gt; fibonacci;
typedef <a href="../Reference/find_if.html">find_if</a>&lt; fibonacci, greater&lt;_,int_c&lt;10&gt; &gt; &gt;::type iter;
typedef <a href="../Reference/find_if.html">find_if</a>&lt; fibonacci, greater&lt;_1,int_&lt;10&gt; &gt; &gt;::type iter;
BOOST_STATIC_ASSERT(iter::type::value == 12));
</pre>
<p>
@@ -58,4 +58,4 @@ BOOST_STATIC_ASSERT(iter::type::value == 12));
<p>
<a href="../Metafunctions.html">Metafunctions</a>, <code><a href="../Reference/greater_equal.html">greater_equal</a></code>, <code><a href="../Reference/less.html">less</a></code>, <code><a href="../Reference/less_equal.html">less_equal</a></code>, <code><a href="../Reference/equal_to.html">equal_to</a></code>, <code><a href="../Reference/not_equal_to.html">not_equal_to</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 17, 2002 4:16 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited March 10, 2003 6:24 am</body></html>

View File

@@ -1,13 +1,13 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/greater equal</title>
<html><head><title>boost::mpl::greater_equal</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>greater_equal</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>greater_equal</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
typename T1
, typaname T2
, typename T2
&gt;
struct greater_equal
{
@@ -17,12 +17,12 @@ struct greater_equal
<p>
<h3>Description</h3>
<p>
Returns <code>true_c</code> if <code>T1::value &gt; T2::value</code> and <code>false_c</code> otherwise [<a href="#1">1</a>].
Returns <code>true_</code> if <code>T1::value &gt; T2::value</code> and <code>false_</code> otherwise [<a href="#1">1</a>].
<p>
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/comparison/greater_equal.hpp">boost/mpl/comparison/greater_equal.hpp</a>"
#include "<a href="../../../../../boost/mpl/greater_equal.hpp">boost/mpl/greater_equal.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -35,7 +35,7 @@ Returns <code>true_c</code> if <code>T1::value &gt; T2::value</code> and <code>f
<p>
<table border="1">
<tr><th>&nbsp;Expression&nbsp;</th><th>&nbsp;Expression&nbsp;type&nbsp;</th><th>&nbsp;Precondition&nbsp;</th><th>&nbsp;Semantics&nbsp;</th><th>&nbsp;Postcondition&nbsp;</th></tr>
<tr><td><code>typedef greater_equal&lt;t1,t2&gt;::type c;</code></td><td>A model of <code>bool</code> <a href="../Integral_Constant.html">Integral Constant</a></td><td></td><td>Equivalent to <code>typedef bool_c&lt;(t1::value &gt;= t2::value)&gt; c;</code></td><td></td></tr>
<tr><td><code>typedef greater_equal&lt;t1,t2&gt;::type c;</code></td><td>A model of <code>bool</code> <a href="../Integral_Constant.html">Integral Constant</a></td><td></td><td>Equivalent to <code>typedef bool_&lt;(t1::value &gt;= t2::value)&gt; c;</code></td><td></td></tr>
</table>
<p>
<h3>Complexity</h3>
@@ -46,8 +46,8 @@ Amortized constant time.
<p>
<pre>
typedef <a href="../Reference/list_c.html">list_c</a>&lt;int,0,1,2,3,4,5,6,7,8,9&gt; numbers;
typedef <a href="../Reference/remove_if.html">remove_if</a>&lt; numbers, greater_equal&lt;_,int_c&lt;5&gt; &gt; &gt;::type result;
BOOST_STATIC_ASSERT(<a href="../Reference/equal.html">equal</a>&lt; result,<a href="../Reference/range_c.html">range_c</a>&lt;int,0,5&gt;,<a href="../Reference/equal_to.html">equal_to</a>&lt;_,_&gt; &gt;::type::value));
typedef <a href="../Reference/remove_if.html">remove_if</a>&lt; numbers, greater_equal&lt;_1,int_&lt;5&gt; &gt; &gt;::type result;
BOOST_STATIC_ASSERT(<a href="../Reference/equal.html">equal</a>&lt; result,<a href="../Reference/range_c.html">range_c</a>&lt;int,0,5&gt; &gt;::type::value));
</pre>
<p>
<h3>Notes</h3>
@@ -58,4 +58,4 @@ BOOST_STATIC_ASSERT(<a href="../Reference/equal.html">equal</a>&lt; result,<a hr
<p>
<a href="../Metafunctions.html">Metafunctions</a>, <code><a href="../Reference/greater.html">greater</a></code>, <code><a href="../Reference/less.html">less</a></code>, <code><a href="../Reference/less_equal.html">less_equal</a></code>, <code><a href="../Reference/equal_to.html">equal_to</a></code>, <code><a href="../Reference/not_equal_to.html">not_equal_to</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 17, 2002 4:16 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited March 10, 2003 6:25 am</body></html>

View File

@@ -1,8 +1,8 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/insert</title>
<html><head><title>boost::mpl::insert</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>insert</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>insert</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
@@ -23,7 +23,7 @@ struct insert
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/insert.hpp">boost/mpl/insert.hpp</a>"
#include "<a href="../../../../../boost/mpl/insert.hpp">boost/mpl/insert.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -59,4 +59,4 @@ BOOST_STATIC_ASSERT((<a href="../Reference/equal.html">equal</a>&lt; range,<a hr
<p>
<a href="../Extensible_Sequence.html">Extensible Sequence</a>, <code><a href="../Reference/insert_range.html">insert_range</a></code>, <code><a href="../Reference/push_front.html">push_front</a></code>, <code><a href="../Reference/push_back.html">push_back</a></code>, <code><a href="../Reference/erase.html">erase</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 17, 2002 5:17 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited July 17, 2002 5:17 am</body></html>

View File

@@ -1,8 +1,8 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/insert range</title>
<html><head><title>boost::mpl::insert_range</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>insert_range</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>insert_range</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
@@ -23,7 +23,7 @@ struct insert_range
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/insert_range.hpp">boost/mpl/insert_range.hpp</a>"
#include "<a href="../../../../../boost/mpl/insert_range.hpp">boost/mpl/insert_range.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -59,4 +59,4 @@ BOOST_STATIC_ASSERT((<a href="../Reference/equal.html">equal</a>&lt; range,<a hr
<p>
<a href="../Extensible_Sequence.html">Extensible Sequence</a>, <code><a href="../Reference/insert.html">insert</a></code>, <code><a href="../Reference/push_front.html">push_front</a></code>, <code><a href="../Reference/push_back.html">push_back</a></code>, <code><a href="../Reference/erase.html">erase</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 22, 2002 4:32 pm</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited July 22, 2002 4:32 pm</body></html>

View File

@@ -1,8 +1,8 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/iter fold</title>
<html><head><title>boost::mpl::iter_fold</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>iter_fold</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>iter_fold</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
@@ -23,7 +23,7 @@ Returns the result of the successive application of binary <code>ForwardOp</code
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/iter_fold.hpp">boost/mpl/iter_fold.hpp</a>"
#include "<a href="../../../../../boost/mpl/iter_fold.hpp">boost/mpl/iter_fold.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -52,7 +52,7 @@ typedef <a href="../Reference/list_c.html">list_c</a>&lt;int,5,-1,0,7,2,0,-5,4&g
typedef iter_fold&lt;
numbers
, <a href="../Reference/begin.html">begin</a>&lt;numbers&gt;::type
, if_&lt; <a href="../Reference/less.html">less</a>&lt; deref&lt;_1&gt;, deref&lt;_2&gt; &gt;,_2,_1 &gt;
, if_&lt; <a href="../Reference/less.html">less</a>&lt; <a href="../Reference/deref.html">deref</a>&lt;_1&gt;, <a href="../Reference/deref.html">deref</a>&lt;_2&gt; &gt;,_2,_1 &gt;
&gt;::type max_element_iter;
<p>
BOOST_STATIC_ASSERT(max_element_iter::type::value == 7);
@@ -62,4 +62,4 @@ BOOST_STATIC_ASSERT(max_element_iter::type::value == 7);
<p>
<a href="../Algorithms.html">Algorithms</a>, <code><a href="../Reference/iter_fold_backward.html">iter_fold_backward</a></code>, <code><a href="../Reference/fold.html">fold</a></code>, <code><a href="../Reference/fold_backward.html">fold_backward</a></code>, <code><a href="../Reference/copy.html">copy</a></code>, <code><a href="../Reference/copy_backward.html">copy_backward</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 19, 2002 1:16 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited July 19, 2002 1:16 am</body></html>

View File

@@ -1,8 +1,8 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/iter fold backward</title>
<html><head><title>boost::mpl::iter_fold_backward</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>iter_fold_backward</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>iter_fold_backward</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
@@ -24,7 +24,7 @@ Returns the result of the successive application of binary <code>BackwardOp</cod
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/iter_fold_backward.hpp">boost/mpl/iter_fold_backward.hpp</a>"
#include "<a href="../../../../../boost/mpl/iter_fold_backward.hpp">boost/mpl/iter_fold_backward.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -58,14 +58,14 @@ typedef <a href="../Reference/list_c.html">list_c</a>&lt;int,-1,-7,-2,-5&gt; neg
typedef iter_fold_backward&lt;
numbers
, <a href="../Reference/list.html">list</a>&lt;&gt;
, if_&lt; <a href="../Reference/less.html">less</a>&lt; deref&lt;_2&gt;,int_c&lt;0&gt; &gt;, push_front&lt;_1,_2&gt;, _1 &gt;
, if_&lt; <a href="../Reference/less.html">less</a>&lt; <a href="../Reference/deref.html">deref</a>&lt;_2&gt;,int_&lt;0&gt; &gt;, push_front&lt;_1,_2&gt;, _1 &gt;
&gt;::type iters;
<p>
BOOST_STATIC_ASSERT(<a href="../Reference/equal.html">equal</a>&lt; negatives, <a href="../Reference/transform_view.html">transform_view</a>&lt; iters,deref&lt;_&gt; &gt;, <a href="../Reference/equal_to.html">equal_to</a>&lt;_,_&gt; &gt;::type::value);
BOOST_STATIC_ASSERT(<a href="../Reference/equal.html">equal</a>&lt; negatives, <a href="../Reference/transform_view.html">transform_view</a>&lt; iters,<a href="../Reference/deref.html">deref</a>&lt;_1&gt; &gt; &gt;::type::value);
</pre>
<p>
<h3>See also</h3>
<p>
<a href="../Algorithms.html">Algorithms</a>, <code><a href="../Reference/iter_fold.html">iter_fold</a></code>, <code><a href="../Reference/fold_backward.html">fold_backward</a></code>, <code><a href="../Reference/fold.html">fold</a></code>, <code><a href="../Reference/copy.html">copy</a></code>, <code><a href="../Reference/copy_backward.html">copy_backward</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 19, 2002 1:58 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited March 12, 2003 6:31 am</body></html>

View File

@@ -1,8 +1,8 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/iterator category</title>
<html><head><title>boost::mpl::iterator_category</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>iterator_category</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>iterator_category</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
@@ -21,8 +21,8 @@ Returns one of the following iterator category tags: <code>input_iterator_tag</c
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/iterator_category.hpp">boost/mpl/iterator_category.hpp</a>"
#include "<a href="../../../../../\boost/mpl/iterator_tag.hpp">boost/mpl/iterator_tag.hpp</a>"
#include "<a href="../../../../../boost/mpl/iterator_category.hpp">boost/mpl/iterator_category.hpp</a>"
#include "<a href="../../../../../boost/mpl/iterator_tag.hpp">boost/mpl/iterator_tag.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -59,4 +59,4 @@ struct my_algorithm
<p>
<a href="../Iterators.html">Iterators</a>, <a href="../Sequence.html">Sequence</a>, <code><a href="../Reference/begin.html">begin</a></code>, <code><a href="../Reference/end.html">end</a></code>, <code><a href="../Reference/advance.html">advance</a></code>, <code><a href="../Reference/distance.html">distance</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 17, 2002 6:20 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited July 17, 2002 6:20 am</body></html>

View File

@@ -0,0 +1,61 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::joint_view</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>joint_view</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
typename Sequence1
, typename Sequence2
&gt;
struct joint_view
{
<span class="cxx-comment">// unspecified</span>
};
</pre>
<p>
<h3>Description</h3>
<p>
<code>joint_view</code> is a two-sequence view that allows one to operate on a sequence of concatenated elements of sequences <code>Sequence1</code> and <code>Sequence2</code> without actually creating one.
<p>
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../boost/mpl/joint_view.hpp">boost/mpl/joint_view.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
<table border="1">
<tr><th>&nbsp;Parameter&nbsp;</th><th>&nbsp;Requirement&nbsp;</th><th>&nbsp;Description &nbsp;</th></tr>
<tr><td><code>Sequence1</code>, <code>Sequence2</code></td><td>A model of <a href="../Sequence.html">Sequence</a></td><td>Sequences to concatenate. </td></tr>
</table>
<p>
<h3>Expression semantics</h3>
<p>
<table border="1">
<tr><th>&nbsp;Expression&nbsp;</th><th>&nbsp;Expression&nbsp;type&nbsp;</th><th>&nbsp;Precondition&nbsp;</th><th>&nbsp;Semantics&nbsp;</th><th>&nbsp;Postcondition&nbsp;</th></tr>
<tr><td><code>typedef joint_view&lt;Sequence1,Sequence2&gt; s;</code></td><td>A model of <a href="../Sequence.html">Sequence</a></td><td></td><td><code>s</code> prodives iterators to all the elements in the ranges <code>[<a href="../Reference/begin.html">begin</a>&lt;Sequence1&gt;::type,<a href="../Reference/end.html">end</a>&lt;Sequence1&gt;::type)</code>, <code>[<a href="../Reference/begin.html">begin</a>&lt;Sequence2&gt;::type,<a href="../Reference/end.html">end</a>&lt;Sequence2&gt;::type)</code>.</td><td><code><a href="../Reference/size.html">size</a>&lt;s&gt;::type::value == <a href="../Reference/size.html">size</a>&lt; Sequence1 &gt;::type::value + <a href="../Reference/size.html">size</a>&lt; Sequence2 &gt;::type::value</code>. </td></tr>
</table>
<p>
<h3>Complexity</h3>
<p>
Amortized constant time.
<p>
<h3>Example</h3>
<p>
<pre>
typedef joint_view&lt;
<a href="../Reference/range_c.html">range_c</a>&lt;int,0,10&gt;
, <a href="../Reference/range_c.html">range_c</a>&lt;int,10,15&gt;
&gt; numbers;
<p>
typedef <a href="../Reference/range_c.html">range_c</a>&lt;int,0,15&gt; answer;
BOOST_STATIC_ASSERT((<a href="../Reference/equal.html">equal</a>&lt;numbers,answer&gt;::type::value));
</pre>
<p>
<h3>See also</h3>
<p>
<a href="../Sequences.html">Sequences</a>, <code><a href="../Reference/transform_view.html">transform_view</a></code>, <code><a href="../Reference/filter_view.html">filter_view</a></code>, <code><a href="../Reference/zip_view.html">zip_view</a></code>
<p><hr>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited March 10, 2003 5:42 am</body></html>

View File

@@ -1,13 +1,13 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/less</title>
<html><head><title>boost::mpl::less</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>less</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>less</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
typename T1
, typaname T2
, typename T2
&gt;
struct less
{
@@ -17,12 +17,12 @@ struct less
<p>
<h3>Description</h3>
<p>
Returns <code>true_c</code> if <code>T1::value &lt; T2::value</code> and <code>false_c</code> otherwise [<a href="#1">1</a>].
Returns <code>true_</code> if <code>T1::value &lt; T2::value</code> and <code>false_</code> otherwise [<a href="#1">1</a>].
<p>
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/comparison/less.hpp">boost/mpl/comparison/less.hpp</a>"
#include "<a href="../../../../../boost/mpl/less.hpp">boost/mpl/less.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -35,7 +35,7 @@ Returns <code>true_c</code> if <code>T1::value &lt; T2::value</code> and <code>f
<p>
<table border="1">
<tr><th>&nbsp;Expression&nbsp;</th><th>&nbsp;Expression&nbsp;type&nbsp;</th><th>&nbsp;Precondition&nbsp;</th><th>&nbsp;Semantics&nbsp;</th><th>&nbsp;Postcondition&nbsp;</th></tr>
<tr><td><code>typedef less&lt;t1,t2&gt;::type c;</code></td><td>A model of <code>bool</code> <a href="../Integral_Constant.html">Integral Constant</a></td><td></td><td>Equivalent to <code>typedef bool_c&lt;(t1::value &lt; t2::value)&gt; c;</code></td><td></td></tr>
<tr><td><code>typedef less&lt;t1,t2&gt;::type c;</code></td><td>A model of <code>bool</code> <a href="../Integral_Constant.html">Integral Constant</a></td><td></td><td>Equivalent to <code>typedef bool_&lt;(t1::value &lt; t2::value)&gt; c;</code></td><td></td></tr>
</table>
<p>
<h3>Complexity</h3>
@@ -46,8 +46,8 @@ Amortized constant time.
<p>
<pre>
typedef <a href="../Reference/list_c.html">list_c</a>&lt;int,0,1,2,3,4,5,6,7,8,9&gt; numbers;
typedef <a href="../Reference/remove_if.html">remove_if</a>&lt; numbers, less&lt;_,int_c&lt;5&gt; &gt; &gt;::type result;
BOOST_STATIC_ASSERT(<a href="../Reference/equal.html">equal</a>&lt; result,<a href="../Reference/range_c.html">range_c</a>&lt;int,5,10&gt;,<a href="../Reference/equal_to.html">equal_to</a>&lt;_,_&gt; &gt;::type::value));
typedef <a href="../Reference/remove_if.html">remove_if</a>&lt; numbers, less&lt;_1,int_&lt;5&gt; &gt; &gt;::type result;
BOOST_STATIC_ASSERT(<a href="../Reference/equal.html">equal</a>&lt; result,<a href="../Reference/range_c.html">range_c</a>&lt;int,5,10&gt; &gt;::type::value));
</pre>
<p>
<h3>Notes</h3>
@@ -58,4 +58,4 @@ BOOST_STATIC_ASSERT(<a href="../Reference/equal.html">equal</a>&lt; result,<a hr
<p>
<a href="../Metafunctions.html">Metafunctions</a>, <code><a href="../Reference/less_equal.html">less_equal</a></code>, <code><a href="../Reference/greater.html">greater</a></code>, <code><a href="../Reference/greater_equal.html">greater_equal</a></code>, <code><a href="../Reference/equal.html">equal</a></code>, <code><a href="../Reference/not_equal_to.html">not_equal_to</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 17, 2002 4:15 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited March 10, 2003 6:22 am</body></html>

View File

@@ -1,13 +1,13 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/less equal</title>
<html><head><title>boost::mpl::less_equal</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>less_equal</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>less_equal</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
typename T1
, typaname T2
, typename T2
&gt;
struct less_equal
{
@@ -17,12 +17,12 @@ struct less_equal
<p>
<h3>Description</h3>
<p>
Returns <code>true_c</code> if <code>T1::value &lt;= T2::value</code> and <code>false_c</code> otherwise [<a href="#1">1</a>].
Returns <code>true_</code> if <code>T1::value &lt;= T2::value</code> and <code>false_</code> otherwise [<a href="#1">1</a>].
<p>
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/comparison/less_equal.hpp">boost/mpl/comparison/less_equal.hpp</a>"
#include "<a href="../../../../../boost/mpl/less_equal.hpp">boost/mpl/less_equal.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -35,7 +35,7 @@ Returns <code>true_c</code> if <code>T1::value &lt;= T2::value</code> and <code>
<p>
<table border="1">
<tr><th>&nbsp;Expression&nbsp;</th><th>&nbsp;Expression&nbsp;type&nbsp;</th><th>&nbsp;Precondition&nbsp;</th><th>&nbsp;Semantics&nbsp;</th><th>&nbsp;Postcondition&nbsp;</th></tr>
<tr><td><code>typedef less_equal&lt;t1,t2&gt;::type c;</code></td><td>A model of <code>bool</code> <a href="../Integral_Constant.html">Integral Constant</a></td><td></td><td>Equivalent to <code>typedef bool_c&lt;(t1::value &lt;= t2::value)&gt; c;</code></td><td></td></tr>
<tr><td><code>typedef less_equal&lt;t1,t2&gt;::type c;</code></td><td>A model of <code>bool</code> <a href="../Integral_Constant.html">Integral Constant</a></td><td></td><td>Equivalent to <code>typedef bool_&lt;(t1::value &lt;= t2::value)&gt; c;</code></td><td></td></tr>
</table>
<p>
<h3>Complexity</h3>
@@ -46,8 +46,8 @@ Amortized constant time.
<p>
<pre>
typedef <a href="../Reference/list_c.html">list_c</a>&lt;int,0,1,2,3,4,5,6,7,8,9&gt; numbers;
typedef <a href="../Reference/remove_if.html">remove_if</a>&lt; numbers, less_equal&lt;_,int_c&lt;4&gt; &gt; &gt;::type result;
BOOST_STATIC_ASSERT(<a href="../Reference/equal.html">equal</a>&lt; result,<a href="../Reference/range_c.html">range_c</a>&lt;int,5,10&gt;,<a href="../Reference/equal_to.html">equal_to</a>&lt;_,_&gt; &gt;::type::value));
typedef <a href="../Reference/remove_if.html">remove_if</a>&lt; numbers, less_equal&lt;_1,int_&lt;4&gt; &gt; &gt;::type result;
BOOST_STATIC_ASSERT(<a href="../Reference/equal.html">equal</a>&lt; result,<a href="../Reference/range_c.html">range_c</a>&lt;int,5,10&gt; &gt;::type::value));
</pre>
<p>
<h3>Notes</h3>
@@ -58,4 +58,4 @@ BOOST_STATIC_ASSERT(<a href="../Reference/equal.html">equal</a>&lt; result,<a hr
<p>
<a href="../Metafunctions.html">Metafunctions</a>, <code><a href="../Reference/less.html">less</a></code>, <code><a href="../Reference/greater.html">greater</a></code>, <code><a href="../Reference/greater_equal.html">greater_equal</a></code>, <code><a href="../Reference/equal.html">equal</a></code>, <code><a href="../Reference/not_equal_to.html">not_equal_to</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 17, 2002 4:15 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited March 10, 2003 6:28 am</body></html>

View File

@@ -1,8 +1,8 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/list</title>
<html><head><title>boost::mpl::list</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>list</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>list</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
@@ -31,15 +31,15 @@ BOOST_STATIC_ASSERT((boost::is_same&lt; <a href="../Reference/front.html">front<
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/list.hpp">boost/mpl/list.hpp</a>"
#include "<a href="../../../../../\boost/mpl/list/list0.hpp">boost/mpl/list/list0.hpp</a>"
#include "<a href="../../../../../\boost/mpl/list/list10.hpp">boost/mpl/list/list10.hpp</a>"
#include "<a href="../../../../../boost/mpl/list.hpp">boost/mpl/list.hpp</a>"
#include "<a href="../../../../../boost/mpl/list/list0.hpp">boost/mpl/list/list0.hpp</a>"
#include "<a href="../../../../../boost/mpl/list/list10.hpp">boost/mpl/list/list10.hpp</a>"
...
#include "<a href="../../../../../\boost/mpl/list/list50.hpp">boost/mpl/list/list50.hpp</a>"
#include "<a href="../../../../../boost/mpl/list/list50.hpp">boost/mpl/list/list50.hpp</a>"
</pre>
<p>
<h3>See also</h3>
<p>
<a href="../Forward_Sequence.html">Forward Sequence</a>, <code><a href="../Reference/list_c.html">list_c</a></code>, <code><a href="../Reference/vector.html">vector</a></code>, <code><a href="../Reference/vector_c.html">vector_c</a></code>, <code><a href="../Reference/range_c.html">range_c</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 17, 2002 8:05 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited July 17, 2002 8:05 am</body></html>

View File

@@ -1,8 +1,8 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/list c</title>
<html><head><title>boost::mpl::list_c</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>list_c</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>list_c</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
@@ -44,15 +44,15 @@ typedef list&lt;
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/list_c.hpp">boost/mpl/list_c.hpp</a>"
#include "<a href="../../../../../\boost/mpl/list/list0_c.hpp">boost/mpl/list/list0_c.hpp</a>"
#include "<a href="../../../../../\boost/mpl/list/list10_c.hpp">boost/mpl/list/list10_c.hpp</a>"
#include "<a href="../../../../../boost/mpl/list_c.hpp">boost/mpl/list_c.hpp</a>"
#include "<a href="../../../../../boost/mpl/list/list0_c.hpp">boost/mpl/list/list0_c.hpp</a>"
#include "<a href="../../../../../boost/mpl/list/list10_c.hpp">boost/mpl/list/list10_c.hpp</a>"
...
#include "<a href="../../../../../\boost/mpl/list/list50_c.hpp">boost/mpl/list/list50_c.hpp</a>"
#include "<a href="../../../../../boost/mpl/list/list50_c.hpp">boost/mpl/list/list50_c.hpp</a>"
</pre>
<p>
<h3>See also</h3>
<p>
<a href="../Random_Access_Sequence.html">Random Access Sequence</a>, <code><a href="../Reference/list.html">list</a></code>, <code><a href="../Reference/vector.html">vector</a></code>, <code><a href="../Reference/vector_c.html">vector_c</a></code>, <code><a href="../Reference/range_c.html">range_c</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 17, 2002 8:04 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited July 17, 2002 8:04 am</body></html>

View File

@@ -1,14 +1,14 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/lower bound</title>
<html><head><title>boost::mpl::lower_bound</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>lower_bound</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>lower_bound</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
typename Sequence
, typename T
, typename Pred
, typename Pred = <a href="../Reference/less.html">less</a>&lt;_,_&gt;
&gt;
struct lower_bound
{
@@ -23,7 +23,7 @@ Returns the first position in the sorted <code>Sequence</code> where <code>T</co
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/lower_bound.hpp">boost/mpl/lower_bound.hpp</a>"
#include "<a href="../../../../../boost/mpl/lower_bound.hpp">boost/mpl/lower_bound.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -49,12 +49,13 @@ The number of comparisons is logarithmic: at most <code>log(size&lt;Sequence&gt;
<p>
<pre>
typedef <a href="../Reference/list_c.html">list_c</a>&lt;int,1,2,3,3,3,5,8&gt; numbers;
typedef lower_bound&lt; numbers, int_c&lt;3&gt;, <a href="../Reference/less.html">less</a>&lt;_,_&gt; &gt;::type iter;
typedef lower_bound&lt; numbers, int_&lt;3&gt; &gt;::type iter;
BOOST_STATIC_ASSERT((<a href="../Reference/distance.html">distance</a>&lt; <a href="../Reference/begin.html">begin</a>&lt;numbers&gt;::type,iter &gt;::type::value == 2));
BOOST_STATIC_ASSERT(iter::type::value == 3);
</pre>
<p>
<h3>See also</h3>
<p>
<a href="../Algorithms.html">Algorithms</a>, <code><a href="../Reference/sort.html">sort</a></code>, <code><a href="../Reference/upper_bound.html">upper_bound</a></code>
<a href="../Algorithms.html">Algorithms</a>, <code>sort</code>, <code><a href="../Reference/upper_bound.html">upper_bound</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 17, 2002 5:13 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited March 10, 2003 5:43 am</body></html>

View File

@@ -0,0 +1,62 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::max_element</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>max_element</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
typename Sequence
, typename Pred = <a href="../Reference/less.html">less</a>&lt;_1,_2&gt;
&gt;
struct max_element
{
typedef <em>unspecified</em> type;
};
</pre>
<p>
<h3>Description</h3>
<p>
Finds the largest element in the <code>Sequence</code>.
<p>
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../boost/mpl/max_element.hpp">boost/mpl/max_element.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
<table border="1">
<tr><th>&nbsp;Parameter&nbsp;</th><th>&nbsp;Requirement&nbsp;</th><th>&nbsp;Description &nbsp;</th></tr>
<tr><td><code>Sequence</code></td><td>A model of <a href="../Forward_Sequence.html">Forward Sequence</a></td><td>A sequence to be searched. </td></tr>
<tr><td><code>Pred</code></td><td>A model of binary Predicate [Lambda Expression]</td><td>A comparison criteria. </td></tr>
</table>
<p>
<h3>Expression semantics</h3>
<p>
<table border="1">
<tr><th>&nbsp;Expression&nbsp;</th><th>&nbsp;Expression&nbsp;type&nbsp;</th><th>&nbsp;Precondition&nbsp;</th><th>&nbsp;Semantics&nbsp;</th><th>&nbsp;Postcondition&nbsp;</th></tr>
<tr><td><code>typedef max_element&lt; Sequence,Pred &gt;::type i;</code></td><td>A model of <a href="../Forward_Iterator.html">Forward Iterator</a></td><td></td><td><code>i</code> is the first iterator in <code>[begin&lt;Sequence&gt;::type, end&lt;Sequence&gt;::type)</code> such that for every iterator <code>j</code> in <code>[begin&lt;Sequence&gt;::type, end&lt;Sequence&gt;::type)</code>, <code>apply&lt; lambda&lt;Pred&gt;::type, i::type, j::type &gt;::type::value == false</code>.</td><td></td></tr>
</table>
<p>
<h3>Complexity</h3>
<p>
Linear. Zero comparisons if <code>Sequence</code> is empty, otherwise exactly <code>size&lt;Sequence&gt;::value - 1</code> comparisons.
<p>
<h3>Example</h3>
<p>
<pre>
typedef <a href="../Reference/vector.html">vector</a>&lt;int,char[50],long,double&gt; types;
typedef max_element&lt;
<a href="../Reference/transform_view.html">transform_view</a>&lt; types,sizeof_&lt;_1&gt; &gt;
&gt;::type iter;
<p>
BOOST_STATIC_ASSERT((<a href="../Reference/distance.html">distance</a>&lt; begin&lt;types&gt;::type,iter &gt;::type::value == 1));
BOOST_STATIC_ASSERT(sizeof(<a href="../Reference/deref.html">deref</a>&lt;iter&gt;::type) == 50);
</pre>
<p>
<h3>See also</h3>
<p>
<a href="../Algorithms.html">Algorithms</a>, <code><a href="../Reference/min_element.html">min_element</a></code>, <code><a href="../Reference/upper_bound.html">upper_bound</a></code>, <code><a href="../Reference/lower_bound.html">lower_bound</a></code>
<p><hr>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited March 10, 2003 6:01 am</body></html>

View File

@@ -0,0 +1,62 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::min_element</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>min_element</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
typename Sequence
, typename Pred = <a href="../Reference/less.html">less</a>&lt;_1,_2&gt;
&gt;
struct min_element
{
typedef <em>unspecified</em> type;
};
</pre>
<p>
<h3>Description</h3>
<p>
Finds the smallest element in the <code>Sequence</code>.
<p>
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../boost/mpl/min_element.hpp">boost/mpl/min_element.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
<table border="1">
<tr><th>&nbsp;Parameter&nbsp;</th><th>&nbsp;Requirement&nbsp;</th><th>&nbsp;Description &nbsp;</th></tr>
<tr><td><code>Sequence</code></td><td>A model of <a href="../Forward_Sequence.html">Forward Sequence</a></td><td>A sequence to be searched. </td></tr>
<tr><td><code>Pred</code></td><td>A model of binary Predicate [Lambda Expression]</td><td>A comparison criteria. </td></tr>
</table>
<p>
<h3>Expression semantics</h3>
<p>
<table border="1">
<tr><th>&nbsp;Expression&nbsp;</th><th>&nbsp;Expression&nbsp;type&nbsp;</th><th>&nbsp;Precondition&nbsp;</th><th>&nbsp;Semantics&nbsp;</th><th>&nbsp;Postcondition&nbsp;</th></tr>
<tr><td><code>typedef min_element&lt; Sequence,Pred &gt;::type i;</code></td><td>A model of <a href="../Forward_Iterator.html">Forward Iterator</a></td><td></td><td><code>i</code> is the first iterator in <code>[begin&lt;Sequence&gt;::type, end&lt;Sequence&gt;::type)</code> such that for every iterator <code>j</code> in <code>[begin&lt;Sequence&gt;::type, end&lt;Sequence&gt;::type)</code>, <code>apply&lt; lambda&lt;Pred&gt;::type, j::type, i::type &gt;::type::value == false</code>.</td><td></td></tr>
</table>
<p>
<h3>Complexity</h3>
<p>
Linear. Zero comparisons if <code>Sequence</code> is empty, otherwise exactly <code>size&lt;Sequence&gt;::value - 1</code> comparisons.
<p>
<h3>Example</h3>
<p>
<pre>
typedef <a href="../Reference/vector.html">vector</a>&lt;bool,char[50],long,double&gt; types;
typedef min_element&lt;
<a href="../Reference/transform_view.html">transform_view</a>&lt; types,sizeof_&lt;_1&gt; &gt;
&gt;::type iter;
<p>
BOOST_STATIC_ASSERT((<a href="../Reference/distance.html">distance</a>&lt; begin&lt;types&gt;::type,iter &gt;::type::value == 0));
BOOST_STATIC_ASSERT(sizeof(<a href="../Reference/deref.html">deref</a>&lt;iter&gt;::type) == sizeof(bool));
</pre>
<p>
<h3>See also</h3>
<p>
<a href="../Algorithms.html">Algorithms</a>, <code><a href="../Reference/max_element.html">max_element</a></code>, <code><a href="../Reference/upper_bound.html">upper_bound</a></code>, <code><a href="../Reference/lower_bound.html">lower_bound</a></code>
<p><hr>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited March 10, 2003 6:05 am</body></html>

View File

@@ -1,16 +1,16 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/minus</title>
<html><head><title>boost::mpl::minus</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>minus</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>minus</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
typename T1
, typaname T2
, typaname T3 = integral_c&lt;int,0&gt;
, typename T2
, typename T3 = integral_c&lt;int,0&gt;
, ...
, typaname Tn = integral_c&lt;int,0&gt;
, typename Tn = integral_c&lt;int,0&gt;
&gt;
struct minus
{
@@ -25,7 +25,7 @@ Returns the difference of its arguments [<a href="#1">1</a>].
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/arithmetic/minus.hpp">boost/mpl/arithmetic/minus.hpp</a>"
#include "<a href="../../../../../boost/mpl/minus.hpp">boost/mpl/minus.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -61,4 +61,4 @@ BOOST_MPL_ASSERT_IS_SAME(diff::value_type, long);
<p>
<a href="../Metafunctions.html">Metafunctions</a>, <code><a href="../Reference/plus.html">plus</a></code>, <code><a href="../Reference/divides.html">divides</a></code>, <code><a href="../Reference/multiplies.html">multiplies</a></code>, <code><a href="../Reference/modulus.html">modulus</a></code>, <code><a href="../Reference/negate.html">negate</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 17, 2002 4:06 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited March 10, 2003 6:31 am</body></html>

View File

@@ -1,13 +1,13 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/modulus</title>
<html><head><title>boost::mpl::modulus</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>modulus</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>modulus</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
typename T1
, typaname T2
, typename T2
&gt;
struct modulus
{
@@ -22,7 +22,7 @@ Returns the modulus of its arguments [<a href="#1">1</a>].
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/arithmetic/modulus.hpp">boost/mpl/arithmetic/modulus.hpp</a>"
#include "<a href="../../../../../boost/mpl/modulus.hpp">boost/mpl/modulus.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -58,4 +58,4 @@ BOOST_MPL_ASSERT_IS_SAME(mod::value_type, long);
<p>
<a href="../Metafunctions.html">Metafunctions</a>, <code><a href="../Reference/divides.html">divides</a></code>, <code><a href="../Reference/multiplies.html">multiplies</a></code>, <code><a href="../Reference/plus.html">plus</a></code>, <code><a href="../Reference/minus.html">minus</a></code>, <code><a href="../Reference/negate.html">negate</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 17, 2002 4:10 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited March 10, 2003 6:32 am</body></html>

View File

@@ -1,16 +1,16 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/multiplies</title>
<html><head><title>boost::mpl::multiplies</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>multiplies</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>multiplies</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
typename T1
, typaname T2
, typaname T3 = integral_c&lt;int,1&gt;
, typename T2
, typename T3 = integral_c&lt;int,1&gt;
, ...
, typaname Tn = integral_c&lt;int,1&gt;
, typename Tn = integral_c&lt;int,1&gt;
&gt;
struct multiplies
{
@@ -25,7 +25,7 @@ Returns the product of its arguments [<a href="#1">1</a>].
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/arithmetic/multiplies.hpp">boost/mpl/arithmetic/multiplies.hpp</a>"
#include "<a href="../../../../../boost/mpl/multiplies.hpp">boost/mpl/multiplies.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -61,4 +61,4 @@ BOOST_MPL_ASSERT_IS_SAME(product::value_type, long);
<p>
<a href="../Metafunctions.html">Metafunctions</a>, <code><a href="../Reference/divides.html">divides</a></code>, <code><a href="../Reference/modulus.html">modulus</a></code>, <code><a href="../Reference/plus.html">plus</a></code>, <code><a href="../Reference/minus.html">minus</a></code>, <code><a href="../Reference/negate.html">negate</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 17, 2002 4:07 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited March 10, 2003 6:31 am</body></html>

View File

@@ -1,8 +1,8 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/negate</title>
<html><head><title>boost::mpl::negate</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>negate</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>negate</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
@@ -21,7 +21,7 @@ Returns the negative (additive inverse) of its argument [<a href="#1">1</a>].
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/arithmetic/negate.hpp">boost/mpl/arithmetic/negate.hpp</a>"
#include "<a href="../../../../../boost/mpl/negate.hpp">boost/mpl/negate.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -57,4 +57,4 @@ BOOST_MPL_ASSERT_IS_SAME(n::value_type, short);
<p>
<a href="../Metafunctions.html">Metafunctions</a>, <code><a href="../Reference/minus.html">minus</a></code>, <code><a href="../Reference/plus.html">plus</a></code>, <code><a href="../Reference/multiplies.html">multiplies</a></code>, <code><a href="../Reference/divides.html">divides</a></code>, <code><a href="../Reference/modulus.html">modulus</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 17, 2002 4:10 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited March 10, 2003 6:33 am</body></html>

View File

@@ -0,0 +1,51 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::not_</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>not_</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
typename F
&gt;
struct not_
{
typedef <em>unspecified</em> type;
};
</pre>
<p>
<h3>Description</h3>
<p>
Returns the result of <em>logical not</em> (<code>!</code>) operation on its argument.
<p>
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../boost/mpl/not.hpp">boost/mpl/not.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
<table border="1">
<tr><th>&nbsp;Parameter&nbsp;</th><th>&nbsp;Requirement&nbsp;</th><th>&nbsp;Description &nbsp;</th></tr>
<tr><td><code>F</code></td><td>A model of nullary <a href="../Metafunction.html">Metafunction</a></td><td></td></tr>
</table>
<p>
<h3>Expression semantics</h3>
<p>
<table border="1">
<tr><th>&nbsp;Expression&nbsp;</th><th>&nbsp;Expression&nbsp;type&nbsp;</th><th>&nbsp;Precondition&nbsp;</th><th>&nbsp;Semantics&nbsp;</th><th>&nbsp;Postcondition&nbsp;</th></tr>
<tr><td><code>typedef not_&lt;f&gt;::type c;</code></td><td>A model of <code>bool</code> <a href="../Integral_Constant.html">Integral Constant</a></td><td></td><td>Equivalent to <code>typedef bool_&lt;(!f::type::value)&gt; c;</code></td><td></td></tr>
</table>
<p>
<h3>Example</h3>
<p>
<pre>
BOOST_STATIC_ASSERT(not_&lt;true_&gt;::type::value == false);
BOOST_STATIC_ASSERT(not_&lt;false_&gt;::type::value == true);
</pre>
<p>
<h3>See also</h3>
<p>
<a href="../Metafunctions.html">Metafunctions</a>, <code><a href="../Reference/and.html">and_</a></code>, <code><a href="../Reference/or.html">or_</a></code>
<p><hr>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited March 10, 2003 1:19 am</body></html>

View File

@@ -1,13 +1,13 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/not equal to</title>
<html><head><title>boost::mpl::not_equal_to</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>not_equal_to</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>not_equal_to</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
typename T1
, typaname T2
, typename T2
&gt;
struct not_equal_to
{
@@ -17,12 +17,12 @@ struct not_equal_to
<p>
<h3>Description</h3>
<p>
Returns <code>true_c</code> if <code>T1::value != T2::value</code> and <code>false_c</code> otherwise [<a href="#1">1</a>].
Returns <code>true_</code> if <code>T1::value != T2::value</code> and <code>false_</code> otherwise [<a href="#1">1</a>].
<p>
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/comparison/not_equal_to.hpp">boost/mpl/comparison/not_equal_to.hpp</a>"
#include "<a href="../../../../../boost/mpl/not_equal_to.hpp">boost/mpl/not_equal_to.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -35,7 +35,7 @@ Returns <code>true_c</code> if <code>T1::value != T2::value</code> and <code>fal
<p>
<table border="1">
<tr><th>&nbsp;Expression&nbsp;</th><th>&nbsp;Expression&nbsp;type&nbsp;</th><th>&nbsp;Precondition&nbsp;</th><th>&nbsp;Semantics&nbsp;</th><th>&nbsp;Postcondition&nbsp;</th></tr>
<tr><td><code>typedef not_equal_to&lt;t1,t2&gt;::type c;</code></td><td>A model of <code>bool</code> <a href="../Integral_Constant.html">Integral Constant</a></td><td></td><td>Equivalent to <code>typedef bool_c&lt;(t1::value != t2::value)&gt; c;</code></td><td></td></tr>
<tr><td><code>typedef not_equal_to&lt;t1,t2&gt;::type c;</code></td><td>A model of <code>bool</code> <a href="../Integral_Constant.html">Integral Constant</a></td><td></td><td>Equivalent to <code>typedef bool_&lt;(t1::value != t2::value)&gt; c;</code></td><td></td></tr>
</table>
<p>
<h3>Complexity</h3>
@@ -46,8 +46,8 @@ Amortized constant time.
<p>
<pre>
typedef <a href="../Reference/list_c.html">list_c</a>&lt;int,1,5,0,7,5,-1,2,4,5&gt; numbers;
typedef <a href="../Reference/remove_if.html">remove_if</a>&lt; numbers, not_equal_to&lt;_,int_c&lt;5&gt; &gt; &gt;::type fives;
BOOST_STATIC_ASSERT(<a href="../Reference/equal_to.html">equal_to</a>&lt; <a href="../Reference/count_if.html">count_if</a>&lt; fives, <a href="../Reference/equal_to.html">equal_to</a>&lt;_,int_c&lt;5&gt; &gt; &gt;::type, <a href="../Reference/size.html">size</a>&lt;fives&gt;::type &gt;::type::value));
typedef <a href="../Reference/remove_if.html">remove_if</a>&lt; numbers, not_equal_to&lt;_1,int_&lt;5&gt; &gt; &gt;::type fives;
BOOST_STATIC_ASSERT(<a href="../Reference/equal_to.html">equal_to</a>&lt; <a href="../Reference/count_if.html">count_if</a>&lt; fives, <a href="../Reference/equal_to.html">equal_to</a>&lt;_1,int_&lt;5&gt; &gt; &gt;::type, <a href="../Reference/size.html">size</a>&lt;fives&gt;::type &gt;::type::value));
</pre>
<p>
<h3>Notes</h3>
@@ -58,4 +58,4 @@ BOOST_STATIC_ASSERT(<a href="../Reference/equal_to.html">equal_to</a>&lt; <a hre
<p>
<a href="../Metafunctions.html">Metafunctions</a>, <code><a href="../Reference/equal_to.html">equal_to</a></code>, <code><a href="../Reference/less.html">less</a></code>, <code><a href="../Reference/less_equal.html">less_equal</a></code>, <code><a href="../Reference/greater.html">greater</a></code>, <code><a href="../Reference/greater_equal.html">greater_equal</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 17, 2002 4:14 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited March 10, 2003 6:20 am</body></html>

62
doc/ref/Reference/or.html Normal file
View File

@@ -0,0 +1,62 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::or_</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>or_</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
typename F1
, typename F2
, typename F3 = false_
...
, typename Fn = false_
&gt;
struct or_
{
typedef <em>unspecified</em> type;
};
</pre>
<p>
<h3>Description</h3>
<p>
Returns the result of short-circuit <em>logical or</em> (<code>||</code>) operation on its arguments.
<p>
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../boost/mpl/or.hpp">boost/mpl/or.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
<table border="1">
<tr><th>&nbsp;Parameter&nbsp;</th><th>&nbsp;Requirement&nbsp;</th><th>&nbsp;Description &nbsp;</th></tr>
<tr><td><code>F1, F2, .., Fn</code></td><td>A model of nullary <a href="../Metafunction.html">Metafunction</a></td><td></td></tr>
</table>
<p>
<h3>Expression semantics</h3>
<p>
<table border="1">
<tr><th>&nbsp;Expression&nbsp;</th><th>&nbsp;Expression&nbsp;type&nbsp;</th><th>&nbsp;Precondition&nbsp;</th><th>&nbsp;Semantics&nbsp;</th><th>&nbsp;Postcondition&nbsp;</th></tr>
<tr><td><code>typedef or_&lt;f1,f2,..,fn&gt;::type c;</code></td><td>A model of <code>bool</code> <a href="../Integral_Constant.html">Integral Constant</a></td><td></td><td>Returns <code>true_</code> if either of <code>f1::type::value, f2::type::value, .., fn::type::value</code> expressions evaluates to true, and <code>false_</code> otherwise; guarantees left-to-right evaluation; moreover, the operands subsequent to the first <code>fi</code> metafunction that evaluates to true are not evaluated.</td><td></td></tr>
</table>
<p>
<h3>Example</h3>
<p>
<pre>
<span class="cxx-comment">// will generate compile-time error if invoked with T == any fundamental type</span>
template&lt; typename T &gt; struct fail
{
typedef typename T::nonexistent type;
};
<p>
BOOST_STATIC_ASSERT((or_&lt; false_,true_ &gt;::type::value == true));
BOOST_STATIC_ASSERT((or_&lt; true_,fail&lt;int&gt; &gt;::type::value == true)); <span class="cxx-comment">// OK, fail&lt;int&gt; is never invoked</span>
BOOST_STATIC_ASSERT((or_&lt; false_,true_,fail&lt;int&gt; &gt;::type::value == true)); <span class="cxx-comment">// OK too</span>
</pre>
<p>
<h3>See also</h3>
<p>
<a href="../Metafunctions.html">Metafunctions</a>, <code><a href="../Reference/and.html">and_</a></code>, <code><a href="../Reference/not.html">not_</a></code>
<p><hr>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited March 10, 2003 1:18 am</body></html>

View File

@@ -1,16 +1,16 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/plus</title>
<html><head><title>boost::mpl::plus</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>plus</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>plus</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
typename T1
, typaname T2
, typaname T3 = integral_c&lt;int,0&gt;
, typename T2
, typename T3 = integral_c&lt;int,0&gt;
, ...
, typaname Tn = integral_c&lt;int,0&gt;
, typename Tn = integral_c&lt;int,0&gt;
&gt;
struct plus
{
@@ -25,7 +25,7 @@ Returns the sum of its arguments [<a href="#1">1</a>].
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/arithmetic/plus.hpp">boost/mpl/arithmetic/plus.hpp</a>"
#include "<a href="../../../../../boost/mpl/plus.hpp">boost/mpl/plus.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -61,4 +61,4 @@ BOOST_MPL_ASSERT_IS_SAME(sum::value_type, long);
<p>
<a href="../Metafunctions.html">Metafunctions</a>, <code><a href="../Reference/minus.html">minus</a></code>, <code><a href="../Reference/multiplies.html">multiplies</a></code>, <code><a href="../Reference/divides.html">divides</a></code>, <code><a href="../Reference/modulus.html">modulus</a></code>, <code><a href="../Reference/negate.html">negate</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 17, 2002 4:05 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited March 10, 2003 6:30 am</body></html>

View File

@@ -1,8 +1,8 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/pop back</title>
<html><head><title>boost::mpl::pop_back</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>pop_back</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>pop_back</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
@@ -21,7 +21,7 @@ struct pop_back
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/pop_back.hpp">boost/mpl/pop_back.hpp</a>"
#include "<a href="../../../../../boost/mpl/pop_back.hpp">boost/mpl/pop_back.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -68,4 +68,4 @@ BOOST_MPL_ASSERT_IS_SAME(back&lt;result3&gt;::type, int);
<p>
<a href="../Extensible_Sequence.html">Extensible Sequence</a>, <code><a href="../Reference/erase.html">erase</a></code>, <code><a href="../Reference/push_back.html">push_back</a></code>, <code><a href="../Reference/back.html">back</a></code>, <code><a href="../Reference/pop_front.html">pop_front</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 17, 2002 3:56 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited July 17, 2002 3:56 am</body></html>

View File

@@ -1,8 +1,8 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/pop front</title>
<html><head><title>boost::mpl::pop_front</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>pop_front</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>pop_front</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
@@ -21,7 +21,7 @@ struct pop_front
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/pop_front.hpp">boost/mpl/pop_front.hpp</a>"
#include "<a href="../../../../../boost/mpl/pop_front.hpp">boost/mpl/pop_front.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -68,4 +68,4 @@ BOOST_MPL_ASSERT_IS_SAME(front&lt;result3&gt;::type, int);
<p>
<a href="../Extensible_Sequence.html">Extensible Sequence</a>, <code><a href="../Reference/erase.html">erase</a></code>, <code><a href="../Reference/push_front.html">push_front</a></code>, <code><a href="../Reference/front.html">front</a></code>, <code><a href="../Reference/pop_back.html">pop_back</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 17, 2002 3:54 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited July 17, 2002 3:54 am</body></html>

View File

@@ -1,8 +1,8 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/push back</title>
<html><head><title>boost::mpl::push_back</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>push_back</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>push_back</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
@@ -22,7 +22,7 @@ struct push_back
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/push_back.hpp">boost/mpl/push_back.hpp</a>"
#include "<a href="../../../../../boost/mpl/push_back.hpp">boost/mpl/push_back.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -47,17 +47,17 @@ Amortized constant time [<a href="#1">1</a>].
<p>
<pre>
typedef <a href="../Reference/vector_c.html">vector_c</a>&lt;bool,false,false,false,true,true,true,false,false&gt; bools;
typedef push_back&lt;bools,false_c&gt;::type message;
typedef push_back&lt;bools,false_&gt;::type message;
BOOST_STATIC_ASSERT(<a href="../Reference/back.html">back</a>&lt;message&gt;::type::value == false);
BOOST_STATIC_ASSERT((<a href="../Reference/count_if.html">count_if</a>&lt;message, <a href="../Reference/equal_to.html">equal_to</a>&lt;_,false_c&gt; &gt;::type::value == 6));
BOOST_STATIC_ASSERT((<a href="../Reference/count_if.html">count_if</a>&lt;message, <a href="../Reference/equal_to.html">equal_to</a>&lt;_1,false_&gt; &gt;::type::value == 6));
</pre>
<p>
<h3>Notes</h3>
<p>
[<a name="1">1</a>] The algorithm is can be viewed as a notational shorcut to more verbose <code>insert&lt; Sequence,end&lt;Sequence&gt;::type,T &gt;::type</code>, and is provided only if the sequence can meet the stated complexity requirements.<br>
[<a name="1">1</a>] The algorithm can be viewed as a notational shorcut to more verbose <code>insert&lt; Sequence,end&lt;Sequence&gt;::type,T &gt;::type</code>, and is provided only if the sequence can meet the stated complexity requirements.<br>
<p>
<h3>See also</h3>
<p>
<a href="../Extensible_Sequence.html">Extensible Sequence</a>, <code><a href="../Reference/insert.html">insert</a></code>, <code><a href="../Reference/back.html">back</a></code>, <code><a href="../Reference/pop_back.html">pop_back</a></code>, <code><a href="../Reference/push_front.html">push_front</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 17, 2002 3:57 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited March 12, 2003 6:34 am</body></html>

View File

@@ -1,8 +1,8 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/push front</title>
<html><head><title>boost::mpl::push_front</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>push_front</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>push_front</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
@@ -22,7 +22,7 @@ struct push_front
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/push_front.hpp">boost/mpl/push_front.hpp</a>"
#include "<a href="../../../../../boost/mpl/push_front.hpp">boost/mpl/push_front.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -55,10 +55,10 @@ BOOST_STATIC_ASSERT((<a href="../Reference/equal.html">equal</a>&lt; fibonacci,l
<p>
<h3>Notes</h3>
<p>
[<a name="1">1</a>] The algorithm is can be viewed as a notational shorcut to more verbose <code>insert&lt; Sequence,begin&lt;Sequence&gt;::type,T &gt;::type</code>, and is provided only if the sequence can meet the stated complexity requirements.<br>
[<a name="1">1</a>] The algorithm can be viewed as a notational shorcut to more verbose <code>insert&lt; Sequence,begin&lt;Sequence&gt;::type,T &gt;::type</code>, and is provided only if the sequence can meet the stated complexity requirements.<br>
<p>
<h3>See also</h3>
<p>
<a href="../Extensible_Sequence.html">Extensible Sequence</a>, <code><a href="../Reference/insert.html">insert</a></code>, <code><a href="../Reference/front.html">front</a></code>, <code><a href="../Reference/pop_front.html">pop_front</a></code>, <code><a href="../Reference/push_back.html">push_back</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 17, 2002 3:53 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited September 11, 2002 4:27 am</body></html>

View File

@@ -1,8 +1,8 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/range c</title>
<html><head><title>boost::mpl::range_c</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>range_c</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>range_c</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
@@ -24,7 +24,7 @@ struct range_c
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/range_c.hpp">boost/mpl/range_c.hpp</a>"
#include "<a href="../../../../../boost/mpl/range_c.hpp">boost/mpl/range_c.hpp</a>"
</pre>
<p>
<h3>Example</h3>
@@ -68,4 +68,4 @@ typedef copy&lt;
<p>
<a href="../Random_Access_Sequence.html">Random Access Sequence</a>, <code><a href="../Reference/vector.html">vector</a></code>, <code><a href="../Reference/vector_c.html">vector_c</a></code>, <code><a href="../Reference/list.html">list</a></code>, <code><a href="../Reference/list_c.html">list_c</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 17, 2002 8:31 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited July 17, 2002 8:31 am</body></html>

View File

@@ -1,8 +1,8 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/remove</title>
<html><head><title>boost::mpl::remove</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>remove</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>remove</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
@@ -22,7 +22,7 @@ Returns a new sequence which contains all the elements from <code>[begin&lt;Sequ
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/remove.hpp">boost/mpl/remove.hpp</a>"
#include "<a href="../../../../../boost/mpl/remove.hpp">boost/mpl/remove.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -56,4 +56,4 @@ BOOST_STATIC_ASSERT((<a href="../Reference/equal.html">equal</a>&lt; result,answ
<p>
<a href="../Algorithms.html">Algorithms</a>, <code><a href="../Reference/remove_if.html">remove_if</a></code>, <code><a href="../Reference/replace.html">replace</a></code>, <code><a href="../Reference/replace_if.html">replace_if</a></code>, <code><a href="../Reference/transform.html">transform</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 17, 2002 8:43 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited July 17, 2002 8:43 am</body></html>

View File

@@ -1,8 +1,8 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/remove if</title>
<html><head><title>boost::mpl::remove_if</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>remove_if</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>remove_if</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
@@ -22,7 +22,7 @@ Returns a new sequence which contains all the elements from <code>[begin&lt;Sequ
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/remove_if.hpp">boost/mpl/remove_if.hpp</a>"
#include "<a href="../../../../../boost/mpl/remove_if.hpp">boost/mpl/remove_if.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -56,4 +56,4 @@ BOOST_STATIC_ASSERT((<a href="../Reference/equal.html">equal</a>&lt; answer,resu
<p>
<a href="../Algorithms.html">Algorithms</a>, <code><a href="../Reference/remove.html">remove</a></code>, <code><a href="../Reference/replace.html">replace</a></code>, <code><a href="../Reference/transform.html">transform</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 17, 2002 8:43 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited July 17, 2002 8:43 am</body></html>

View File

@@ -1,8 +1,8 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/replace</title>
<html><head><title>boost::mpl::replace</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>replace</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>replace</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
@@ -23,7 +23,7 @@ Performs a replacement operation on the sequence. The algorithm returns a new se
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/replace.hpp">boost/mpl/replace.hpp</a>"
#include "<a href="../../../../../boost/mpl/replace.hpp">boost/mpl/replace.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -58,4 +58,4 @@ BOOST_STATIC_ASSERT((<a href="../Reference/equal.html">equal</a>&lt; result,answ
<p>
<a href="../Algorithms.html">Algorithms</a>, <code><a href="../Reference/replace_if.html">replace_if</a></code>, <code><a href="../Reference/transform.html">transform</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 17, 2002 5:38 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited July 17, 2002 5:38 am</body></html>

View File

@@ -1,8 +1,8 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/replace if</title>
<html><head><title>boost::mpl::replace_if</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>replace_if</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>replace_if</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
@@ -23,7 +23,7 @@ Performs a conditional replacement operation on the sequence. The algorithm retu
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/replace_if.hpp">boost/mpl/replace_if.hpp</a>"
#include "<a href="../../../../../boost/mpl/replace_if.hpp">boost/mpl/replace_if.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -49,13 +49,13 @@ Linear. Performs exactly <code><a href="../Reference/size.html">size</a>&lt;Sequ
<p>
<pre>
typedef <a href="../Reference/list_c.html">list_c</a>&lt;int,1,4,5,2,7,5,3,5&gt;::type numbers;
typedef replace_if&lt; numbers, greater&lt;_,4&gt;, int_c&lt;0&gt; &gt;::type result;
typedef replace_if&lt; numbers, greater&lt;_,4&gt;, int_&lt;0&gt; &gt;::type result;
typedef <a href="../Reference/list_c.html">list_c</a>&lt;int,1,4,0,2,0,0,3,0&gt;::type answer;
BOOST_STATIC_ASSERT((<a href="../Reference/equal.html">equal</a>&lt; answer,result,<a href="../Reference/equal_to.html">equal_to</a>&lt;_,_&gt; &gt;::type::value));
BOOST_STATIC_ASSERT((<a href="../Reference/equal.html">equal</a>&lt; answer,result &gt;::type::value));
</pre>
<p>
<h3>See also</h3>
<p>
<a href="../Algorithms.html">Algorithms</a>, <code><a href="../Reference/replace.html">replace</a></code>, <code><a href="../Reference/transform.html">transform</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 17, 2002 5:38 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited March 12, 2003 6:32 am</body></html>

View File

@@ -1,9 +1,8 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/reverse</title>
<html><head><title>boost::mpl::reverse</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>reverse</h1><h3>Synopsis
</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>reverse</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
@@ -15,47 +14,45 @@ struct reverse
};
</pre>
<p>
<h3>Description
</h3>
<h3>Description</h3>
<p>
[to do]
Reverses a sequence. The result sequence preserves all the functional and performance characteristics of the original <code>Sequence</code>, including its size, but not identity.
<p>
<h3>Definition
</h3>
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/reverse.hpp">boost/mpl/reverse.hpp</a>"
#include "<a href="../../../../../boost/mpl/reverse.hpp">boost/mpl/reverse.hpp</a>"
</pre>
<p>
<h3>Parameters
</h3>
<h3>Parameters</h3>
<table border="1">
<tr><th>&nbsp;Parameter&nbsp;</th><th>&nbsp;Requirement&nbsp;</th><th>&nbsp;Description&nbsp;</th><th>&nbsp;Default argument &nbsp;</th></tr>
<tr><td><code>Param</code></td><td>A model of Concept</td><td>[to do]</td><td>[to do] </td></tr>
<tr><th>&nbsp;Parameter&nbsp;</th><th>&nbsp;Requirement&nbsp;</th><th>&nbsp;Description &nbsp;</th></tr>
<tr><td><code>Sequence</code></td><td>A model of <a href="../Extensible_Sequence.html">Extensible Sequence</a></td><td>The original sequence. </td></tr>
</table>
<p>
<h3>Members
</h3>
<h3>Expression semantics</h3>
<p>
<table border="1">
<tr><th>&nbsp;Member&nbsp;</th><th>&nbsp;Description &nbsp;</th></tr>
<tr><td><code>type</code></td><td>[to do] </td></tr>
<tr><th>&nbsp;Expression&nbsp;</th><th>&nbsp;Expression&nbsp;type&nbsp;</th><th>&nbsp;Precondition&nbsp;</th><th>&nbsp;Semantics&nbsp;</th><th>&nbsp;Postcondition&nbsp;</th></tr>
<tr><td><code>typedef reverse&lt;Sequence&gt;::type s;</code></td><td>A model of <a href="../Extensible_Sequence.html">Extensible Sequence</a></td><td></td><td></td><td><code>size&lt;s&gt;::type::value == size&lt;Sequence&gt;::type::value</code>. </td></tr>
</table>
<p>
<h3>Complexity
</h3>
<h3>Complexity</h3>
<p>
[to do]
Linear.
<p>
<h3>Example
</h3>
<h3>Example</h3>
<p>
<pre>
[to do]
typedef <a href="../Reference/list_c.html">list_c</a>&lt;int,9,8,7,6,5,4,3,2,1,0&gt;::type numbers;
typedef reverse&lt; numbers &gt;::type result;
<p>
typedef <a href="../Reference/range_c.html">range_c</a>&lt;int,0,10&gt; answer;
BOOST_STATIC_ASSERT((<a href="../Reference/equal.html">equal</a>&lt;result,answer&gt;::type::value));
</pre>
<p>
<h3>See also
</h3>
<h3>See also</h3>
<p>
<a href="../Algorithms.html">Algorithms</a>, <code><a href="../Reference/fold.html">fold</a></code>, <code>fold_reverse</code>
<a href="../Algorithms.html">Algorithms</a>, <code><a href="../Reference/transform.html">transform</a></code>, <code><a href="../Reference/remove.html">remove</a></code>, <code><a href="../Reference/remove_if.html">remove_if</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited February 19, 2002 4:11 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited March 10, 2003 6:13 am</body></html>

View File

@@ -0,0 +1,62 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::single_view</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>single_view</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
typename T
&gt;
struct single_view
{
<span class="cxx-comment">// unspecified</span>
};
</pre>
<p>
<h3>Description</h3>
<p>
Allows one to represent an arbitrary type <code>T</code> as a single-element sequence.
<p>
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../boost/mpl/single_view.hpp">boost/mpl/single_view.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
<table border="1">
<tr><th>&nbsp;Parameter&nbsp;</th><th>&nbsp;Requirement&nbsp;</th><th>&nbsp;Description &nbsp;</th></tr>
<tr><td><code>T</code></td><td>A type</td><td>The type to be wrapped in a sequence. </td></tr>
</table>
<p>
<h3>Expression semantics</h3>
<p>
<table border="1">
<tr><th>&nbsp;Expression&nbsp;</th><th>&nbsp;Expression&nbsp;type&nbsp;</th><th>&nbsp;Precondition&nbsp;</th><th>&nbsp;Semantics&nbsp;</th><th>&nbsp;Postcondition&nbsp;</th></tr>
<tr><td><code>typedef single_view&lt;T&gt; s;</code></td><td>A model of <a href="../Sequence.html">Sequence</a></td><td></td><td><code>s</code> is a random-access, single-element sequence such as <code><a href="../Reference/front.html">front</a>&lt;s&gt;::type</code> is identical to <code>T</code></td><td><code><a href="../Reference/size.html">size</a>&lt;s&gt;::type::value == 1, boost::same_as&lt;<a href="../Reference/front.html">front</a>&lt;s&gt;::type,T&gt;::value == true</code>. </td></tr>
</table>
<p>
<h3>Complexity</h3>
<p>
Amortized constant time.
<p>
<h3>Example</h3>
<p>
<pre>
typedef single_view&lt;int&gt; view;
typedef <a href="../Reference/begin.html">begin</a>&lt;view&gt;::type first;
typedef <a href="../Reference/end.html">end</a>&lt;view&gt;::type last;
<p>
BOOST_MPL_ASSERT_IS_SAME(first::type,int);
BOOST_MPL_ASSERT_IS_SAME(first::next,last);
BOOST_MPL_ASSERT_IS_SAME(last::prior,first);
<p>
BOOST_STATIC_ASSERT(size&lt;view&gt;::type::value == 1);
</pre>
<p>
<h3>See also</h3>
<p>
<a href="../Sequences.html">Sequences</a>, <code><a href="../Reference/transform_view.html">transform_view</a></code>, <code><a href="../Reference/filter_view.html">filter_view</a></code>, <code><a href="../Reference/joint_view.html">joint_view</a></code>, <code><a href="../Reference/zip_view.html">zip_view</a></code>
<p><hr>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited March 10, 2003 5:19 am</body></html>

View File

@@ -1,8 +1,8 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/size</title>
<html><head><title>boost::mpl::size</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>size</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>size</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
@@ -21,7 +21,7 @@ struct size
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/size.hpp">boost/mpl/size.hpp</a>"
#include "<a href="../../../../../boost/mpl/size.hpp">boost/mpl/size.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -57,4 +57,4 @@ BOOST_STATIC_ASSERT(size&lt;more_numbers&gt;::type::value == 100);
<p>
<a href="../Sequence.html">Sequence</a>, <code><a href="../Reference/empty.html">empty</a></code>, <code><a href="../Reference/begin.html">begin</a></code>, <code><a href="../Reference/end.html">end</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 17, 2002 3:51 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited July 17, 2002 3:51 am</body></html>

View File

@@ -1,8 +1,8 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/transform</title>
<html><head><title>boost::mpl::transform</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>transform</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>transform</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
@@ -22,7 +22,7 @@ Performs a transformation on the sequence. The algorithm returns a new sequence
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/transform.hpp">boost/mpl/transform.hpp</a>"
#include "<a href="../../../../../boost/mpl/transform.hpp">boost/mpl/transform.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -56,4 +56,4 @@ BOOST_STATIC_ASSERT((<a href="../Reference/equal.html">equal</a>&lt;result,point
<p>
<a href="../Algorithms.html">Algorithms</a>, <code><a href="../Reference/replace.html">replace</a></code>, <code><a href="../Reference/replace_if.html">replace_if</a></code>, <code><a href="../Reference/transform.html">transform</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 17, 2002 5:47 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited July 17, 2002 5:47 am</body></html>

View File

@@ -1,8 +1,8 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/transform view</title>
<html><head><title>boost::mpl::transform_view</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>transform_view</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>transform_view</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
@@ -11,6 +11,7 @@ template&lt;
&gt;
struct transform_view
{
<span class="cxx-comment">// unspecified</span>
};
</pre>
<p>
@@ -21,7 +22,7 @@ struct transform_view
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/transform_view.hpp">boost/mpl/transform_view.hpp</a>"
#include "<a href="../../../../../boost/mpl/transform_view.hpp">boost/mpl/transform_view.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -48,7 +49,7 @@ Finds the largest type in a sequence.
<p>
<pre>
typedef <a href="../Reference/list.html">list</a>&lt;int,long,char,char[50],double&gt; types;
typedef max_element&lt;
typedef <a href="../Reference/max_element.html">max_element</a>&lt;
transform_view&lt; types, size_of&lt;_&gt; &gt;
&gt;::type iter;
BOOST_STATIC_ASSERT(iter::type::value == 50);
@@ -56,6 +57,6 @@ BOOST_STATIC_ASSERT(iter::type::value == 50);
<p>
<h3>See also</h3>
<p>
<a href="../Sequences.html">Sequences</a>, <code><a href="../Reference/filter_view.html">filter_view</a></code>, <code><a href="../Reference/list.html">list</a></code>, <code>max_element</code>
<a href="../Sequences.html">Sequences</a>, <code><a href="../Reference/filter_view.html">filter_view</a></code>, <code><a href="../Reference/joint_view.html">joint_view</a></code>, <code><a href="../Reference/zip_view.html">zip_view</a></code>, <code><a href="../Reference/max_element.html">max_element</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 23, 2002 3:23 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited March 10, 2003 4:43 am</body></html>

View File

@@ -1,14 +1,14 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/upper bound</title>
<html><head><title>boost::mpl::upper_bound</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>upper_bound</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>upper_bound</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
typename Sequence
, typename T
, typename Pred
, typename Pred = <a href="../Reference/less.html">less</a>&lt;_1,_2&gt;
&gt;
struct upper_bound
{
@@ -23,7 +23,7 @@ Returns the last position in the sorted <code>Sequence</code> where <code>T</cod
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/upper_bound.hpp">boost/mpl/upper_bound.hpp</a>"
#include "<a href="../../../../../boost/mpl/upper_bound.hpp">boost/mpl/upper_bound.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
@@ -49,12 +49,13 @@ The number of comparisons is logarithmic: at most <code>log(size&lt;Sequence&gt;
<p>
<pre>
typedef <a href="../Reference/list_c.html">list_c</a>&lt;int,1,2,3,3,3,5,8&gt; numbers;
typedef upper_bound&lt; numbers, int_c&lt;3&gt;, <a href="../Reference/less.html">less</a>&lt;_,_&gt; &gt;::type iter;
typedef upper_bound&lt; numbers, int_&lt;3&gt; &gt;::type iter;
BOOST_STATIC_ASSERT((<a href="../Reference/distance.html">distance</a>&lt; <a href="../Reference/begin.html">begin</a>&lt;numbers&gt;::type,iter &gt;::type::value == 5));
BOOST_STATIC_ASSERT(iter::type::value == 5);
</pre>
<p>
<h3>See also</h3>
<p>
<a href="../Algorithms.html">Algorithms</a>, <code><a href="../Reference/sort.html">sort</a></code>, <code><a href="../Reference/lower_bound.html">lower_bound</a></code>
<a href="../Algorithms.html">Algorithms</a>, <code>sort</code>, <code><a href="../Reference/lower_bound.html">lower_bound</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 17, 2002 6:30 pm</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited March 10, 2003 5:44 am</body></html>

View File

@@ -1,8 +1,8 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/vector</title>
<html><head><title>boost::mpl::vector</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>vector</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>vector</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
@@ -32,11 +32,11 @@ BOOST_STATIC_ASSERT((boost::is_same&lt;my,my_float&gt;::value));
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/vector.hpp">boost/mpl/vector.hpp</a>"
#include "<a href="../../../../../\boost/mpl/vector/vector0.hpp">boost/mpl/vector/vector0.hpp</a>"
#include "<a href="../../../../../\boost/mpl/vector/vector10.hpp">boost/mpl/vector/vector10.hpp</a>"
#include "<a href="../../../../../boost/mpl/vector.hpp">boost/mpl/vector.hpp</a>"
#include "<a href="../../../../../boost/mpl/vector/vector0.hpp">boost/mpl/vector/vector0.hpp</a>"
#include "<a href="../../../../../boost/mpl/vector/vector10.hpp">boost/mpl/vector/vector10.hpp</a>"
...
#include "<a href="../../../../../\boost/mpl/vector/vector50.hpp">boost/mpl/vector/vector50.hpp</a>"
#include "<a href="../../../../../boost/mpl/vector/vector50.hpp">boost/mpl/vector/vector50.hpp</a>"
</pre>
<p>
<h3>Notes</h3>
@@ -74,4 +74,4 @@ BOOST_STATIC_ASSERT((is_same&lt;t,int&gt;::value));
<p>
<a href="../Random_Access_Sequence.html">Random Access Sequence</a>, <code><a href="../Reference/vector_c.html">vector_c</a></code>, <code><a href="../Reference/list.html">list</a></code>, <code><a href="../Reference/list_c.html">list_c</a></code>, <code><a href="../Reference/range_c.html">range_c</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 22, 2002 4:28 pm</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited July 22, 2002 4:28 pm</body></html>

View File

@@ -1,8 +1,8 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Reference/vector c</title>
<html><head><title>boost::mpl::vector_c</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Content.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>vector_c</h1><h3>Synopsis</h3>
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>vector_c</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
@@ -44,15 +44,15 @@ typedef vector&lt;
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../\boost/mpl/vector_c.hpp">boost/mpl/vector_c.hpp</a>"
#include "<a href="../../../../../\boost/mpl/vector/vector0_c.hpp">boost/mpl/vector/vector0_c.hpp</a>"
#include "<a href="../../../../../\boost/mpl/vector/vector10_c.hpp">boost/mpl/vector/vector10_c.hpp</a>"
#include "<a href="../../../../../boost/mpl/vector_c.hpp">boost/mpl/vector_c.hpp</a>"
#include "<a href="../../../../../boost/mpl/vector/vector0_c.hpp">boost/mpl/vector/vector0_c.hpp</a>"
#include "<a href="../../../../../boost/mpl/vector/vector10_c.hpp">boost/mpl/vector/vector10_c.hpp</a>"
...
#include "<a href="../../../../../\boost/mpl/vector/vector50_c.hpp">boost/mpl/vector/vector50_c.hpp</a>"
#include "<a href="../../../../../boost/mpl/vector/vector50_c.hpp">boost/mpl/vector/vector50_c.hpp</a>"
</pre>
<p>
<h3>See also</h3>
<p>
<a href="../Random_Access_Sequence.html">Random Access Sequence</a>, <code><a href="../Reference/vector.html">vector</a></code>, <code><a href="../Reference/list.html">list</a></code>, <code><a href="../Reference/list_c.html">list_c</a></code>, <code><a href="../Reference/range_c.html">range_c</a></code>
<p><hr>
<a href="../Table_of_Content.html">Table of Content</a> | <a href="../Reference.html">Reference</a><br>Last edited July 17, 2002 8:01 am</body></html>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited July 17, 2002 8:01 am</body></html>

View File

@@ -0,0 +1,66 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::zip_view</title>
<link rel="stylesheet" href="../mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="../Table_of_Contents.html"><img src="../mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>zip_view</h1><h3>Synopsis</h3>
<p>
<pre>
template&lt;
typename Sequences
&gt;
struct zip_view
{
<span class="cxx-comment">// unspecified</span>
};
</pre>
<p>
<h3>Description</h3>
<p>
<code>zip_view</code> provides a "zipped" view onto several sequences; that is, it allows to represent several sequences as a single sequence of elements each of those, in its turn, is a sequence of the corresponding <code>Sequences</code> elements.
<p>
<h3>Definition</h3>
<p>
<pre>
#include "<a href="../../../../../boost/mpl/zip_view.hpp">boost/mpl/zip_view.hpp</a>"
</pre>
<p>
<h3>Parameters</h3>
<table border="1">
<tr><th>&nbsp;Parameter&nbsp;</th><th>&nbsp;Requirement&nbsp;</th><th>&nbsp;Description &nbsp;</th></tr>
<tr><td><code>Sequences</code></td><td>A <a href="../Sequence.html">Sequence</a> of <a href="../Sequence.html">Sequence</a>s</td><td>Sequences to be "zipped". </td></tr>
</table>
<p>
<h3>Expression semantics</h3>
<p>
<table border="1">
<tr><th>&nbsp;Expression&nbsp;</th><th>&nbsp;Expression&nbsp;type&nbsp;</th><th>&nbsp;Precondition&nbsp;</th><th>&nbsp;Semantics&nbsp;</th><th>&nbsp;Postcondition&nbsp;</th></tr>
<tr><td><code>typedef zip_view&lt;Sequences&gt; s;</code></td><td>A model of <a href="../Sequence.html">Sequence</a></td><td></td><td><code>s</code> is a sequence such that for each <code>i</code> in <code>[<a href="../Reference/begin.html">begin</a>&lt;s&gt;::type, <a href="../Reference/end.html">end</a>&lt;s&gt;::type)</code> and for each <code>j</code> in <code>[<a href="../Reference/begin.html">begin</a>&lt;Sequences&gt;::type, <a href="../Reference/end.html">end</a>&lt;Sequences&gt;::type)</code> <code>i::type</code> is identical to <code><a href="../Reference/transform.html">transform</a>&lt;j::type, <a href="../Reference/deref.html">deref</a>&lt;_1&gt; &gt;::type </code>.</td><td></td></tr>
</table>
<p>
<h3>Complexity</h3>
<p>
Amortized constant time.
<p>
<h3>Example</h3>
<p>
<pre>
typedef <a href="../Reference/range_c.html">range_c</a>&lt;int,0,10&gt; s1;
typedef range_c&lt;int,10,20&gt; s2;
<p>
typedef <a href="../Reference/transform_view.html">transform_view</a>&lt;
<a href="../Reference/zip_view.html">zip_view</a>&lt; <a href="../Reference/list.html">list</a>&lt;s1,s2&gt; &gt;
, apply_seq&lt; <a href="../Reference/plus.html">plus</a>&lt;_1,_2&gt; &gt;
&gt; result;
<p>
BOOST_STATIC_ASSERT((equal&lt;
result
, <a href="../Reference/filter_view.html">filter_view</a>&lt; range_c&lt;int,10,30&gt;, math::is_even&lt;_1&gt; &gt;
, <a href="../Reference/equal_to.html">equal_to</a>&lt;_1,_2&gt;
&gt;::type::value));
</pre>
<p>
<h3>See also</h3>
<p>
<a href="../Sequences.html">Sequences</a>, <code><a href="../Reference/transform_view.html">transform_view</a></code>, <code><a href="../Reference/filter_view.html">filter_view</a></code>, <code><a href="../Reference/joint_view.html">joint_view</a></code>, <code><a href="../Reference/equal.html">equal</a></code>
<p><hr>
<a href="../Table_of_Contents.html">Table of Contents</a><br>Last edited March 10, 2003 5:04 am</body></html>

View File

@@ -2,7 +2,7 @@
<html><head><title>boost::mpl::Sequence</title>
<link rel="stylesheet" href="./mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="./Table_of_Content.html"><img src="./mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>Sequence</h1><h3>Description</h3>
<h1><a href="./Table_of_Contents.html"><img src="./mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>Sequence</h1><h3>Description</h3>
<p>
A Sequence (or, more precisely, an Input Sequence) is a compile-time entity to which you can apply <code><a href="./Reference/begin.html">begin</a></code>/<code><a href="./Reference/end.html">end</a></code> operations in order to get iterators for accessing the range of its elements. In general, a sequence does not guarantee that its content doesn't change from one iteration to another, or between different compilation sessions [<a href="#1">1</a>]. See <a href="./Forward_Sequence.html">Forward Sequence</a> for the definition of the concept that imposes such additional requirements.
<p>
@@ -46,4 +46,4 @@ For any sequence <code>s</code> the following invariants always hold:
<p>
<a href="./Sequences.html">Sequences</a>, <a href="./Forward_Sequence.html">Forward Sequence</a>, <a href="./Input_Iterator.html">Input Iterator</a>, <code><a href="./Reference/begin.html">begin</a></code>, <code><a href="./Reference/end.html">end</a></code>
<p><hr>
<a href="./Table_of_Content.html">Table of Content</a><br>Last edited July 21, 2002 5:55 pm</body></html>
<a href="./Table_of_Contents.html">Table of Contents</a><br>Last edited July 21, 2002 5:55 pm</body></html>

View File

@@ -2,31 +2,38 @@
<html><head><title>boost::mpl::Sequences</title>
<link rel="stylesheet" href="./mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="./Table_of_Content.html"><img src="./mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>Sequences</h1><ol>
<li>Concepts
<ol>
<h1><a href="./Table_of_Contents.html"><img src="./mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>Sequences</h1><h4>Concepts</h4>
<ul>
<li><a href="./Sequence.html">Sequence</a>
<li><a href="./Forward_Sequence.html">Forward Sequence</a>
<li><a href="./Bidirectional_Sequence.html">Bidirectional Sequence</a>
<li><a href="./Random_Access_Sequence.html">Random Access Sequence</a>
<li><a href="./Extensible_Sequence.html">Extensible Sequence</a>
</ol>
<li>Classes
<ol>
</ul>
<p>
<h4>Classes</h4>
<ul>
<li><a href="./Reference/vector.html">vector</a>
<li><a href="./Reference/list.html">list</a>
<li><a href="./Reference/vector_c.html">vector_c</a>
<li><a href="./Reference/list_c.html">list_c</a>
<li><a href="./Reference/range_c.html">range_c</a>
</ol>
<li>Views
<ol>
</ul>
<p>
<h4>Views</h4>
<ul>
<li><a href="./Reference/transform_view.html">transform_view</a>
<li><a href="./Reference/filter_view.html">filter_view</a>
</ol>
<li>Algorithms
<ol>
<li><a href="./Reference/joint_view.html">joint_view</a>
<li><a href="./Reference/zip_view.html">zip_view</a>
<li><a href="./Reference/single_view.html">single_view</a>
<li>as_sequence
</ul>
<p>
<h4>Metafunctions</h4>
<ul>
<li><a href="./Reference/begin.html">begin</a>/<a href="./Reference/end.html">end</a>
<li>is_sequence
<li><a href="./Reference/size.html">size</a>
<li><a href="./Reference/empty.html">empty</a>
<li><a href="./Reference/front.html">front</a>
@@ -40,7 +47,7 @@
<li><a href="./Reference/insert.html">insert</a>
<li><a href="./Reference/insert_range.html">insert_range</a>
<li><a href="./Reference/erase.html">erase</a>
</ol>
</ol>
</ul>
<p>
<p><hr>
<a href="./Table_of_Content.html">Table of Content</a><br>Last edited July 19, 2002 2:14 am</body></html>
<a href="./Table_of_Contents.html">Table of Contents</a><br>Last edited March 10, 2003 5:07 am</body></html>

View File

@@ -0,0 +1,15 @@
<!doctype html public "-//ietf//dtd html//en">
<html><head><title>boost::mpl::Table of Contents</title>
<link rel="stylesheet" href="./mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="./Table_of_Contents.html"><img src="./mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>Table of Contents</h1><ol>
<li><a href="./Sequences.html">Sequences</a>
<li><a href="./Iterators.html">Iterators</a>
<li><a href="./Algorithms.html">Algorithms</a>
<li><a href="./Metafunctions.html">Metafunctions</a>
<li><a href="./Integral_constant_classes.html">Integral constant classes</a>
<li><a href="./Categorized_index.html">Categorized index</a>
<li><a href="./Acknowledgements.html">Acknowledgements</a>
</ol>
<p><hr>
<a href="./Table_of_Contents.html">Table of Contents</a><br>Last edited March 10, 2003 1:32 am</body></html>

View File

@@ -2,7 +2,7 @@
<html><head><title>boost::mpl::Trivial Iterator</title>
<link rel="stylesheet" href="./mpl_wiki.css">
</head><body bgcolor="white">
<h1><a href="./Table_of_Content.html"><img src="./mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>Trivial Iterator</h1><h3>Description</h3>
<h1><a href="./Table_of_Contents.html"><img src="./mpl_logo.jpg" alt="[Home]" border=0 align="right"></a>Trivial Iterator</h1><h3>Description</h3>
<p>
A Trivial Iterator <code>i</code> is a type that represents a reference to an element of some <a href="./Sequence.html">Sequence</a>, and allows to access the element through its nested <code>type</code> member [<a href="#1">1</a>]. A trivial iterator does not define any traversal operations.
<p>
@@ -43,4 +43,4 @@ For any trivial iterators <code>i</code> and <code>j</code> the following invari
<p>
<a href="./Sequence.html">Sequence</a>, <a href="./Input_Iterator.html">Input Iterator</a>
<p><hr>
<a href="./Table_of_Content.html">Table of Content</a><br>Last edited July 15, 2002 10:46 am</body></html>
<a href="./Table_of_Contents.html">Table of Contents</a><br>Last edited July 15, 2002 10:46 am</body></html>