forked from boostorg/preprocessor
limited variadic support
[SVN r72763]
This commit is contained in:
37
doc/ref/array_enum.html
Normal file
37
doc/ref/array_enum.html
Normal file
@ -0,0 +1,37 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>BOOST_PP_ARRAY_ENUM</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;"> The <b>BOOST_PP_ARRAY_ENUM</b> macro converts an <i>array</i> to its comma-separated elements. The comma-separated elements are in the form of <i>variadic data</i>.<br>
|
||||
</div>
|
||||
<h4> Usage </h4>
|
||||
<div class="code"> <b>BOOST_PP_ARRAY_ENUM</b>(<i>array</i>) </div>
|
||||
<h4> Arguments </h4>
|
||||
<dl>
|
||||
<dt>array</dt>
|
||||
<dd> The <i>array</i> whose elements are to be converted. </dd>
|
||||
</dl>
|
||||
<h4> Remarks </h4>
|
||||
<div> This macro expands to a comma-separated list of the elements in <i>array</i>.
|
||||
For example, <b>BOOST_PP_ARRAY_ENUM</b>((3,(<i>x,</i><i>y,</i><i>z</i>)))
|
||||
expands to...
|
||||
<div> <i>x</i>, <i>y</i>, <i>z</i> </div>
|
||||
</div>
|
||||
<h4> Requirements </h4>
|
||||
<div> <b>Header:</b> <a href="../headers/array/enum.html"><boost/preprocessor/array/enum.hpp></a>
|
||||
</div>
|
||||
<h4> Sample Code </h4>
|
||||
<div>
|
||||
<pre>#include <<a href="../headers/array/enum.html">boost/preprocessor/array/enum.hpp</a>><br><br>#define ARRAY (5,(B,O,O,S,T))<br><br><a href="array_enum.html">BOOST_PP_ARRAY_ENUM</a>(ARRAY) // expands to B, O, O, S, T<br></pre>
|
||||
</div>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;"> <i></i><i><EFBFBD> Copyright Edward Diener 2011</i> </div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
|
||||
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
33
doc/ref/array_to_list.html
Normal file
33
doc/ref/array_to_list.html
Normal file
@ -0,0 +1,33 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>BOOST_PP_ARRAY_TO_LIST</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;"> The <b>BOOST_PP_ARRAY_TO_LIST</b>
|
||||
macro converts an <i>array</i> to a <i>list</i>. </div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code"> <b>BOOST_PP_ARRAY_TO_LIST</b>(<i>array</i>)
|
||||
</div>
|
||||
<h4>Arguments</h4>
|
||||
<dl><dt>array</dt>
|
||||
<dd> The <i>array</i> to be converted. </dd>
|
||||
</dl>
|
||||
<a href="limit_tuple.html"></a><ul>
|
||||
</ul>
|
||||
<h4>Requirements</h4>
|
||||
<div> <b>Header:</b> <a href="../headers/array/to_list.html"><boost/preprocessor/array/to_list.hpp></a>
|
||||
</div>
|
||||
<h4>Sample Code</h4>
|
||||
<div>
|
||||
<pre>#include <<a href="../headers/array/to_list.html">boost/preprocessor/array/to_list.hpp</a>><br><br><a href="array_to_list.html">BOOST_PP_ARRAY_TO_LIST</a>((3, (x, y, z)))<br> // expands to (x, (y, (z, <a href="nil.html">BOOST_PP_NIL</a>)))<br></pre>
|
||||
</div>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;"> <i></i><i><EFBFBD> Copyright Edward Diener 2011</i> </div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
|
||||
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
31
doc/ref/array_to_seq.html
Normal file
31
doc/ref/array_to_seq.html
Normal file
@ -0,0 +1,31 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>BOOST_PP_ARRAY_TO_SEQ</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;"> The <b>BOOST_PP_ARRAY_TO_SEQ</b> macro
|
||||
converts an <i>array</i> to a <i>seq</i>. </div>
|
||||
<h4> Usage </h4>
|
||||
<div class="code"> <b>BOOST_PP_ARRAY_TO_SEQ</b>(<i>array</i>)
|
||||
</div>
|
||||
<h4> Arguments </h4>
|
||||
<dl><dt>array</dt>
|
||||
<dd> The <i>array</i> to be converted. </dd>
|
||||
</dl>
|
||||
<h4> Requirements </h4>
|
||||
<div> <b>Header:</b> <a href="../headers/array/to_seq.html"><boost/preprocessor/array/to_seq.hpp></a>
|
||||
</div>
|
||||
<h4> Sample Code </h4>
|
||||
<div>
|
||||
<pre>#include <<a href="../headers/array/to_seq.html">boost/preprocessor/array/to_seq.hpp</a>><br><br><a href="array_to_seq.html">BOOST_PP_ARRAY_TO_SEQ</a>((3, (a, b, c))) // expands to (a)(b)(c)<br></pre>
|
||||
</div>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;"> <i></i><i><EFBFBD> Copyright Edward Diener 2011</i> </div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
|
||||
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
31
doc/ref/array_to_tuple.html
Normal file
31
doc/ref/array_to_tuple.html
Normal file
@ -0,0 +1,31 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>BOOST_PP_ARRAY_TO_TUPLE</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;"> The <b>BOOST_PP_ARRAY_TO_TUPLE</b> macro
|
||||
converts an <i>array</i> to an <i>tuple</i>. </div>
|
||||
<h4> Usage </h4>
|
||||
<div class="code"> <b>BOOST_PP_ARRAY_TO_TUPLE</b>(<i>array</i>) </div>
|
||||
<h4> Arguments </h4>
|
||||
<dl>
|
||||
<dt>array</dt>
|
||||
<dd> The <i>array</i> to be converted. </dd>
|
||||
</dl>
|
||||
<h4> Requirements </h4>
|
||||
<div> <b>Header:</b> <a href="../headers/array/to_tuple.html"><boost/preprocessor/array/to_tuple.hpp></a>
|
||||
</div>
|
||||
<h4> Sample Code </h4>
|
||||
<div>
|
||||
<pre>#include <<a href="../headers/array/to_tuple.html">boost/preprocessor/array/to_tuple.hpp</a>><br><br>#define ARRAY (3,(a, b, c))<br><br><a href="array_to_tuple.html">BOOST_PP_ARRAY_TO_TUPLE</a>(ARRAY) // expands to (a, b, c)<br></pre>
|
||||
</div>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;"> <i></i><i><EFBFBD> Copyright Edward Diener 2011</i> </div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
|
||||
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@ -1,10 +1,10 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>BOOST_PP_LIMIT_TUPLE</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
<title>BOOST_PP_LIMIT_TUPLE</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>BOOST_PP_LIMIT_TUPLE</b> macro defines the maximum <i>tuple</i> size supported by the library.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
@ -13,7 +13,7 @@
|
||||
</div>
|
||||
<h4>Remarks</h4>
|
||||
<div>
|
||||
This macro currently expands to <i>25</i>.
|
||||
This macro currently expands to <i>64</i>.
|
||||
</div>
|
||||
<h4>Requirements</h4>
|
||||
<div>
|
||||
@ -22,13 +22,12 @@
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
<br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
</html>
|
24
doc/ref/limit_variadic.html
Normal file
24
doc/ref/limit_variadic.html
Normal file
@ -0,0 +1,24 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>BOOST_PP_LIMIT_VARIADIC</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;"> The <b>BOOST_PP_LIMIT_VARIADIC</b> macro
|
||||
defines the maximum <i>variadic data</i> size supported by the library. </div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code"> <b>BOOST_PP_LIMIT_VARIADIC</b> </div>
|
||||
<h4>Remarks</h4>
|
||||
<div> This macro currently expands to <i>64</i>. </div>
|
||||
<h4>Requirements</h4>
|
||||
<div> <b>Header:</b> <a href="../headers/config/limits.html"><boost/preprocessor/config/limits.hpp></a>
|
||||
</div>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;"> <i></i><i><EFBFBD> Copyright Edward Diener 2011</i> </div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
|
||||
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
39
doc/ref/list_to_array.html
Normal file
39
doc/ref/list_to_array.html
Normal file
@ -0,0 +1,39 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>BOOST_PP_LIST_TO_ARRAY</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css"></head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;"> The <b>BOOST_PP_LIST_TO_ARRAY</b> macro
|
||||
converts a <i>list</i> to an <i>array</i>. </div>
|
||||
<h4> Usage </h4>
|
||||
<div class="code"> <b>BOOST_PP_LIST_TO_ARRAY</b>(<i>list</i>) </div>
|
||||
<h4> Arguments </h4>
|
||||
<dl>
|
||||
<dt>list</dt>
|
||||
<dd> The <i>list</i> to be converted. </dd>
|
||||
</dl>
|
||||
<h4>Remarks</h4>
|
||||
<div>
|
||||
This macro uses <b>BOOST_PP_WHILE</b>.
|
||||
Within <b>BOOST_PP_WHILE</b>, it is more efficient to use <b>BOOST_PP_LIST_TO_ARRAY_D</b>.
|
||||
</div>
|
||||
<h4>See Also</h4>
|
||||
<ul>
|
||||
<li><a href="list_to_array_d.html">BOOST_PP_LIST_TO_ARRAY_D</a></li>
|
||||
</ul>
|
||||
<h4> Requirements </h4>
|
||||
<div> <b>Header:</b> <a href="../headers/list/to_array.html"><boost/preprocessor/list/to_array.hpp></a>
|
||||
</div>
|
||||
<h4> Sample Code </h4>
|
||||
<div>
|
||||
<pre>#include <<a href="../headers/list/to_array.html">boost/preprocessor/list/to_array.hpp</a>><br><br>#define LIST (a, (b, (c, <a href="nil.html">BOOST_PP_NIL</a>)))<br><br><a href="list_to_array.html">BOOST_PP_LIST_TO_ARRAY</a>(LIST) // expands to (3, (a, b, c))<br></pre>
|
||||
</div>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;"> <i></i><i>© Copyright Edward Diener 2011</i> </div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
|
||||
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
27
doc/ref/list_to_array_d.html
Normal file
27
doc/ref/list_to_array_d.html
Normal file
@ -0,0 +1,27 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>BOOST_PP_LIST_TO_ARRAY_D</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css"></head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>BOOST_PP_LIST_TO_ARRAY_D</b> macro converts a <i>list</i> to an <i>array</i>.
|
||||
It reenters <b>BOOST_PP_WHILE</b> with maximum efficiency.
|
||||
</div>
|
||||
<h4> Usage </h4>
|
||||
<div class="code"> <b>BOOST_PP_LIST_TO_ARRAY_D</b>(<i>d</i>, <i>list</i>) </div>
|
||||
<h4> Arguments </h4>
|
||||
<dl>
|
||||
<dt>d</dt>
|
||||
<dd>The next available <b>BOOST_PP_WHILE</b> iteration.</dd>
|
||||
<dt>list</dt>
|
||||
<dd> The <i>list</i> to be converted. </dd>
|
||||
</dl>
|
||||
<h4>See Also</h4>
|
||||
<ul>
|
||||
<li><a href="list_to_array_d.html">BOOST_PP_LIST_TO_ARRAY</a></li>
|
||||
</ul>
|
||||
<h4> Requirements </h4>
|
||||
<div> <b>Header:</b> <a href="../headers/list/to_array.html"><boost/preprocessor/list/to_array.hpp></a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
40
doc/ref/list_to_seq.html
Normal file
40
doc/ref/list_to_seq.html
Normal file
@ -0,0 +1,40 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>BOOST_PP_LIST_TO_SEQ</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;"> The <b>BOOST_PP_LIST_TO_SEQ</b> macro
|
||||
converts a <i>list</i> to a <i>seq</i>. </div>
|
||||
<h4> Usage </h4>
|
||||
<div class="code"> <b>BOOST_PP_LIST_TO_SEQ</b>(<i>list</i>)
|
||||
</div>
|
||||
<h4> Arguments </h4>
|
||||
<dl><dt>list</dt>
|
||||
<dd> The <i>list</i> to be converted. </dd>
|
||||
</dl>
|
||||
<h4>Remarks</h4>
|
||||
<div>
|
||||
This macro uses <b>BOOST_PP_FOR</b>.
|
||||
Within <b>BOOST_PP_FOR</b>, it is more efficient to use <b>BOOST_PP_LIST_TO_SEQ_R</b>.
|
||||
</div>
|
||||
<h4>See Also</h4>
|
||||
<ul>
|
||||
<li><a href="list_to_seq_r.html">BOOST_PP_LIST_TO_SEQ_R</a></li>
|
||||
</ul>
|
||||
<h4> Requirements </h4>
|
||||
<div> <b>Header:</b> <a href="../headers/list/to_seq.html"><boost/preprocessor/list/to_seq.hpp></a>
|
||||
</div>
|
||||
<h4> Sample Code </h4>
|
||||
<div>
|
||||
<pre>#include <<a href="../headers/list/to_seq.html">boost/preprocessor/list/to_seq.hpp</a>><br><br><a href="list_to_seq.html">BOOST_PP_LIST_TO_SEQ</a>((a, (b, (c, <a href="nil.html">BOOST_PP_NIL</a>)))) // expands to (a)(b)(c)<br></pre>
|
||||
</div>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;"> <i></i><i>© Copyright Edward Diener 2011</i> </div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
|
||||
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
27
doc/ref/list_to_seq_r.html
Normal file
27
doc/ref/list_to_seq_r.html
Normal file
@ -0,0 +1,27 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>BOOST_PP_LIST_TO_SEQ_R</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css"></head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>BOOST_PP_LIST_TO_SEQ_R</b> macro converts a <i>list</i> to an <i>seq</i>.
|
||||
It reenters <b>BOOST_PP_FOR</b> with maximum efficiency.
|
||||
</div>
|
||||
<h4> Usage </h4>
|
||||
<div class="code"> <b>BOOST_PP_LIST_TO_SEQ_R</b>(<i>r</i>, <i>list</i>) </div>
|
||||
<h4> Arguments </h4>
|
||||
<dl>
|
||||
<dt>d</dt>
|
||||
<dd>The next available <b>BOOST_PP_FOR</b> repetition.</dd>
|
||||
<dt>list</dt>
|
||||
<dd> The <i>list</i> to be converted. </dd>
|
||||
</dl>
|
||||
<h4>See Also</h4>
|
||||
<ul>
|
||||
<li><a href="list_to_seq_r.html">BOOST_PP_LIST_TO_SEQ</a></li>
|
||||
</ul>
|
||||
<h4> Requirements </h4>
|
||||
<div> <b>Header:</b> <a href="../headers/list/to_seq.html"><boost/preprocessor/list/to_seq.hpp></a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
46
doc/ref/overload.html
Normal file
46
doc/ref/overload.html
Normal file
@ -0,0 +1,46 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>BOOST_PP_OVERLOAD</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;"> The <b>BOOST_PP_OVERLOAD</b> variadic macro expands to the name of a non-variadic macro having a given number of parameters.<br>
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code"> <b>BOOST_PP_OVERLOAD</b>(<i>prefix</i>,...) <sup>(v)</sup><br>
|
||||
</div>
|
||||
<h4>Arguments</h4>
|
||||
<dl>
|
||||
<dt>prefix<br>
|
||||
</dt><dd>
|
||||
The prefix of the non-variadic macro name.
|
||||
</dd><dt>...<br>
|
||||
</dt><dd><i>
|
||||
Variadic data</i>. The number of variadic data
|
||||
elements, as determined by BOOST_PP_VARIADIC_SIZE, is appended to the
|
||||
prefix to form the output non-variadic macro name.<br>
|
||||
</dd>
|
||||
</dl>
|
||||
<h4>Remarks</h4>
|
||||
<div> This macro creates a macro name which depends on the number of elements of variadic data. It should be used in the form of <br>
|
||||
BOOST_PP_OVERLOAD(MACRO_NAME_,__VA_ARGS__)(__VA_ARGS__) in order to
|
||||
call a non-variadic macro taking a given number of variadic data
|
||||
elements as non-variadic arguments. In this way one can invoke a
|
||||
variadic macro with a variable number of parameters which calls one of
|
||||
a series of non-variadic macros doing very similar things.
|
||||
</div><b>Requirements</b>
|
||||
<div> <b>Header:</b> <a href="../headers/facilities/overload.html"><boost/preprocessor/facilities/overload.hpp></a>
|
||||
</div>
|
||||
<h4>Sample Code</h4>
|
||||
<div>
|
||||
<pre>#include <<a href="../headers/facilities/overload.html">boost/preprocessor/facilities/overload.hpp</a>><br>#include <<a href="../headers/cat.html">boost/preprocessor/cat.hpp</a>><br>#include <<a href="../headers/facilities/empty.html">boost/preprocessor/facilities/empty.hpp</a>><br>#include <<a href="../headers/arithmetic/add.html">boost/preprocessor/arithmetic/add.hpp</a>><br><br>#define MACRO_1(number) MACRO_2(number,10)<br>#define MACRO_2(number1,number2) <a href="add.html">BOOST_PP_ADD</a>(number1,number2)<br><br>#define MACRO_ADD_NUMBERS(...) <a href="overload.html">BOOST_PP_OVERLOAD</a>(MACRO_,__VA_ARGS__)(__VA_ARGS__)<br><br>// or for Visual C++<br><br>#define MACRO_ADD_NUMBERS(...) \<br> <a href="cat.html">BOOST_PP_CAT</a>(<a href="overload.html">BOOST_PP_OVERLOAD</a>(MACRO_,__VA_ARGS__)(__VA_ARGS__),<a href="empty.html">BOOST_PP_EMPTY</a>())<br><br>MACRO_ADD_NUMBERS(5) // output is 15<br>MACRO_ADD_NUMBERS(3,6) // output is 9<br></pre>
|
||||
</div>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;"> <i></i><i><EFBFBD> Copyright Edward Diener 2011</i> </div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
|
||||
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@ -1,17 +1,17 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>BOOST_PP_SEQ_CAT</title>
|
||||
<head>
|
||||
<title>BOOST_PP_SEQ_CAT</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>BOOST_PP_SEQ_CAT</b> macro concatenates all elements in a <i>seq</i>.
|
||||
</div>
|
||||
<h4>
|
||||
Usage
|
||||
</h4>
|
||||
<div class="code">
|
||||
<b>BOOST_PP_SEQ_CAT</b>(<i>list</i>)
|
||||
<b>BOOST_PP_SEQ_CAT</b>(<i>seq</i>)
|
||||
</div>
|
||||
<h4>
|
||||
Arguments
|
||||
@ -48,24 +48,17 @@
|
||||
Sample Code
|
||||
</h4>
|
||||
<div>
|
||||
<pre>
|
||||
#include <<a href="../headers/seq/cat.html">boost/preprocessor/seq/cat.hpp</a>>
|
||||
|
||||
#define SEQ (a)(b)(c)
|
||||
|
||||
<a href="seq_cat.html">BOOST_PP_SEQ_CAT</a>(SEQ) // expands to abc
|
||||
</pre>
|
||||
<pre>#include <<a href="../headers/seq/cat.html">boost/preprocessor/seq/cat.hpp</a>><br><br>#define SEQ (a)(b)(c)<br><br><a href="seq_cat.html">BOOST_PP_SEQ_CAT</a>(SEQ) // expands to abc<br></pre>
|
||||
</div>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
<br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</body>
|
||||
</html>
|
||||
|
@ -1,10 +1,10 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>BOOST_PP_SEQ_CAT_S</title>
|
||||
<head>
|
||||
<title>BOOST_PP_SEQ_CAT_S</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>BOOST_PP_SEQ_CAT_S</b> macro concatenates all elements in a <i>seq</i>.
|
||||
It reenters <b>BOOST_PP_SEQ_FOLD_LEFT</b> with maximum efficiency.
|
||||
</div>
|
||||
@ -12,7 +12,7 @@
|
||||
Usage
|
||||
</h4>
|
||||
<div class="code">
|
||||
<b>BOOST_PP_SEQ_CAT_S</b>(<i>s</i>, <i>list</i>)
|
||||
<b>BOOST_PP_SEQ_CAT_S</b>(<i>s</i>, <i>seq</i>)
|
||||
</div>
|
||||
<h4>
|
||||
Arguments
|
||||
@ -49,13 +49,12 @@
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
<br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</body>
|
||||
</html>
|
||||
|
@ -1,17 +1,17 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>BOOST_PP_SEQ_ELEM</title>
|
||||
<head>
|
||||
<title>BOOST_PP_SEQ_ELEM</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>BOOST_PP_SEQ_ELEM</b> macro extracts an element from a <i>seq</i>.
|
||||
</div>
|
||||
<h4>
|
||||
Usage
|
||||
</h4>
|
||||
<div class="code">
|
||||
<b>BOOST_PP_SEQ_ELEM</b>(<i>i</i>, <i>list</i>)
|
||||
<b>BOOST_PP_SEQ_ELEM</b>(<i>i</i>, <i>seq</i>)
|
||||
</div>
|
||||
<h4>
|
||||
Arguments
|
||||
@ -43,37 +43,17 @@
|
||||
Sample Code
|
||||
</h4>
|
||||
<div>
|
||||
<pre>
|
||||
#include <<a href="../headers/seq/elem.html">boost/preprocessor/seq/elem.hpp</a>>
|
||||
|
||||
<a href="seq_elem.html">BOOST_PP_SEQ_ELEM</a>(1, (a)(b)(c)) // expands to b
|
||||
|
||||
#define SEQ \
|
||||
(0)(1)(2)(3)(4)(5)(6)(7)(8)(9) \
|
||||
(10)(11)(12)(13)(14)(15)(16)(17)(18)(19) \
|
||||
(20)(21)(22)(23)(24)(25)(26)(27)(28)(29) \
|
||||
(30)(31)(32)(33)(34)(35)(36)(37)(38)(39) \
|
||||
(40)(41)(42)(43)(44)(45)(46)(47)(48)(49) \
|
||||
(50)(51)(52)(53)(54)(55)(56)(57)(58)(59) \
|
||||
(60)(61)(62)(63)(64)(65)(66)(67)(68)(69) \
|
||||
(70)(71)(72)(73)(74)(75)(76)(77)(78)(79) \
|
||||
(80)(81)(82)(83)(84)(85)(86)(87)(88)(89) \
|
||||
(90)(91)(92)(93)(94)(95)(96)(97)(98)(99) \
|
||||
/**/
|
||||
|
||||
<a href="seq_elem.html">BOOST_PP_SEQ_ELEM</a>(88, SEQ) // expands to 88
|
||||
</pre>
|
||||
<pre>#include <<a href="../headers/seq/elem.html">boost/preprocessor/seq/elem.hpp</a>><br><br><a href="seq_elem.html">BOOST_PP_SEQ_ELEM</a>(1, (a)(b)(c)) // expands to b<br><br>#define SEQ \<br> (0)(1)(2)(3)(4)(5)(6)(7)(8)(9) \<br> (10)(11)(12)(13)(14)(15)(16)(17)(18)(19) \<br> (20)(21)(22)(23)(24)(25)(26)(27)(28)(29) \<br> (30)(31)(32)(33)(34)(35)(36)(37)(38)(39) \<br> (40)(41)(42)(43)(44)(45)(46)(47)(48)(49) \<br> (50)(51)(52)(53)(54)(55)(56)(57)(58)(59) \<br> (60)(61)(62)(63)(64)(65)(66)(67)(68)(69) \<br> (70)(71)(72)(73)(74)(75)(76)(77)(78)(79) \<br> (80)(81)(82)(83)(84)(85)(86)(87)(88)(89) \<br> (90)(91)(92)(93)(94)(95)(96)(97)(98)(99) \<br> /**/<br><br><a href="seq_elem.html">BOOST_PP_SEQ_ELEM</a>(88, SEQ) // expands to 88<br></pre>
|
||||
</div>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
<br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</body>
|
||||
</html>
|
||||
|
@ -1,10 +1,10 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>BOOST_PP_SEQ_FIRST_N</title>
|
||||
<head>
|
||||
<title>BOOST_PP_SEQ_FIRST_N</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>BOOST_PP_SEQ_FIRST_N</b> macro expands to a <i>seq</i> of the first <i>n</i>
|
||||
elements of a <i>seq</i>.
|
||||
</div>
|
||||
@ -12,7 +12,7 @@
|
||||
Usage
|
||||
</h4>
|
||||
<div class="code">
|
||||
<b>BOOST_PP_SEQ_FIRST_N</b>(<i>n</i>, <i>list</i>)
|
||||
<b>BOOST_PP_SEQ_FIRST_N</b>(<i>n</i>, <i>seq</i>)
|
||||
</div>
|
||||
<h4>
|
||||
Arguments
|
||||
@ -22,7 +22,7 @@
|
||||
<dd>
|
||||
The number of elements to extract.
|
||||
</dd>
|
||||
<dt>list</dt>
|
||||
<dt>seq</dt>
|
||||
<dd>
|
||||
The <i>seq</i> from which the elements are extracted.
|
||||
</dd>
|
||||
@ -51,24 +51,17 @@
|
||||
Sample Code
|
||||
</h4>
|
||||
<div>
|
||||
<pre>
|
||||
#include <<a href="../headers/seq/first_n.html">boost/preprocessor/seq/first_n.hpp</a>>
|
||||
|
||||
#define SEQ (a)(b)(c)(d)(e)
|
||||
|
||||
<a href="seq_first_n.html">BOOST_PP_SEQ_FIRST_N</a>(2, SEQ) // expands to (a)(b)
|
||||
</pre>
|
||||
<pre>#include <<a href="../headers/seq/first_n.html">boost/preprocessor/seq/first_n.hpp</a>><br><br>#define SEQ (a)(b)(c)(d)(e)<br><br><a href="seq_first_n.html">BOOST_PP_SEQ_FIRST_N</a>(2, SEQ) // expands to (a)(b)<br></pre>
|
||||
</div>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
<br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</body>
|
||||
</html>
|
||||
|
@ -1,12 +1,12 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>BOOST_PP_SEQ_NIL</title>
|
||||
<head>
|
||||
<title>BOOST_PP_SEQ_NIL</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>BOOST_PP_SEQ_NIL</b> macro is a placeholder macro for an empty <i>seq</i>.
|
||||
It is only valid if it is elements are appended to the end of this empty
|
||||
It is only valid if it's elements are appended to the end of this empty
|
||||
"seq."
|
||||
</div>
|
||||
<h4>
|
||||
@ -63,38 +63,19 @@
|
||||
Sample Code
|
||||
</h4>
|
||||
<div>
|
||||
<pre>
|
||||
#include <<a href="../headers/facilities/empty.html">boost/preprocessor/facilities/empty.hpp</a>>
|
||||
#include <<a href="../headers/seq/push_back.html">boost/preprocessor/seq/push_back.hpp</a>>
|
||||
#include <<a href="../headers/seq/push_front.html">boost/preprocessor/seq/push_front.hpp</a>>
|
||||
#include <<a href="../headers/seq/seq.html">boost/preprocessor/seq/seq.hpp</a>>
|
||||
|
||||
#define SEQ_L <a href="seq_nil.html">BOOST_PP_SEQ_NIL</a>
|
||||
<pre>#include <<a href="../headers/facilities/empty.html">boost/preprocessor/facilities/empty.hpp</a>><br>#include <<a href="../headers/seq/push_back.html">boost/preprocessor/seq/push_back.hpp</a>><br>#include <<a href="../headers/seq/push_front.html">boost/preprocessor/seq/push_front.hpp</a>><br>#include <<a href="../headers/seq/seq.html">boost/preprocessor/seq/seq.hpp</a>><br><br>#define SEQ_L <a href="seq_nil.html">BOOST_PP_SEQ_NIL</a>
|
||||
#define SEQ_R <a href="empty.html">BOOST_PP_EMPTY</a>
|
||||
|
||||
<a href="seq_push_back.html">BOOST_PP_SEQ_PUSH_BACK</a>(
|
||||
<a href="seq_push_back.html">BOOST_PP_SEQ_PUSH_BACK</a>(SEQ_L, a), b
|
||||
)
|
||||
|
||||
// expands to (a)(b)
|
||||
|
||||
<a href="seq_push_front.html">BOOST_PP_SEQ_PUSH_FRONT</a>(
|
||||
<a href="seq_push_front.html">BOOST_PP_SEQ_PUSH_FRONT</a>(SEQ_R, a), b
|
||||
)()
|
||||
|
||||
// expands to (b)(a)
|
||||
</pre>
|
||||
<a href="seq_push_back.html">BOOST_PP_SEQ_PUSH_BACK</a>(<br> <a href="seq_push_back.html">BOOST_PP_SEQ_PUSH_BACK</a>(SEQ_L, a), b<br>)<br><br>// expands to (a)(b)<br><br><a href="seq_push_front.html">BOOST_PP_SEQ_PUSH_FRONT</a>(<br> <a href="seq_push_front.html">BOOST_PP_SEQ_PUSH_FRONT</a>(SEQ_R, a), b<br>)()<br><br>// expands to (b)(a)<br></pre>
|
||||
</div>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
<br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</body>
|
||||
</html>
|
||||
|
@ -1,10 +1,10 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>BOOST_PP_SEQ_REST_N</title>
|
||||
<head>
|
||||
<title>BOOST_PP_SEQ_REST_N</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>BOOST_PP_SEQ_REST_N</b> macro expands to a <i>seq</i> of all but the
|
||||
first <i>n</i> elements of a <i>seq</i>.
|
||||
</div>
|
||||
@ -12,7 +12,7 @@
|
||||
Usage
|
||||
</h4>
|
||||
<div class="code">
|
||||
<b>BOOST_PP_SEQ_REST_N</b>(<i>n</i>, <i>list</i>)
|
||||
<b>BOOST_PP_SEQ_REST_N</b>(<i>n</i>, <i>seq</i>)
|
||||
</div>
|
||||
<h4>
|
||||
Arguments
|
||||
@ -22,7 +22,7 @@
|
||||
<dd>
|
||||
The number of elements to remove.
|
||||
</dd>
|
||||
<dt>list</dt>
|
||||
<dt>seq</dt>
|
||||
<dd>
|
||||
The <i>seq</i> from which the elements are to be removed.
|
||||
</dd>
|
||||
@ -51,70 +51,17 @@
|
||||
Sample Code
|
||||
</h4>
|
||||
<div>
|
||||
<pre>
|
||||
#include <<a href="../headers/arithmetic/inc.html">boost/preprocessor/arithmetic/inc.hpp</a>>
|
||||
#include <<a href="../headers/seq/elem.html">boost/preprocessor/seq/elem.hpp</a>>
|
||||
#include <<a href="../headers/seq/first_n.html">boost/preprocessor/seq/first_n.hpp</a>>
|
||||
#include <<a href="../headers/seq/rest_n.html">boost/preprocessor/seq/rest_n.hpp</a>>
|
||||
#include <<a href="../headers/seq/size.html">boost/preprocessor/seq/size.hpp</a>>
|
||||
|
||||
#define NUMBERS \
|
||||
(0)(1)(2)(3)(4)(5)(6)(7)(8)(9) \
|
||||
(10)(11)(12)(13)(14)(15)(16)(17)(18)(19) \
|
||||
(20)(21)(22)(23)(24)(25)(26)(27)(28)(29) \
|
||||
(30)(31)(32)(33)(34)(35)(36)(37)(38)(39) \
|
||||
(40)(41)(42)(43)(44)(45)(46)(47)(48)(49) \
|
||||
(50)(51)(52)(53)(54)(55)(56)(57)(58)(59) \
|
||||
(60)(61)(62)(63)(64)(65)(66)(67)(68)(69) \
|
||||
(70)(71)(72)(73)(74)(75)(76)(77)(78)(79) \
|
||||
(80)(81)(82)(83)(84)(85)(86)(87)(88)(89) \
|
||||
(90)(91)(92)(93)(94)(95)(96)(97)(98)(99) \
|
||||
(100)(101)(102)(103)(104)(105)(106)(107)(108)(109) \
|
||||
(110)(111)(112)(113)(114)(115)(116)(117)(118)(119) \
|
||||
(120)(121)(122)(123)(124)(125)(126)(127)(128)(129) \
|
||||
(130)(131)(132)(133)(134)(135)(136)(137)(138)(139) \
|
||||
(140)(141)(142)(143)(144)(145)(146)(147)(148)(149) \
|
||||
(150)(151)(152)(153)(154)(155)(156)(157)(158)(159) \
|
||||
(160)(161)(162)(163)(164)(165)(166)(167)(168)(169) \
|
||||
(170)(171)(172)(173)(174)(175)(176)(177)(178)(179) \
|
||||
(180)(181)(182)(183)(184)(185)(186)(187)(188)(189) \
|
||||
(190)(191)(192)(193)(194)(195)(196)(197)(198)(199) \
|
||||
(200)(201)(202)(203)(204)(205)(206)(207)(208)(209) \
|
||||
(210)(211)(212)(213)(214)(215)(216)(217)(218)(219) \
|
||||
(220)(221)(222)(223)(224)(225)(226)(227)(228)(229) \
|
||||
(230)(231)(232)(233)(234)(235)(236)(237)(238)(239) \
|
||||
(240)(241)(242)(243)(244)(245)(246)(247)(248)(249) \
|
||||
(250)(251)(252)(253)(254)(255)(256) \
|
||||
/**/
|
||||
|
||||
#define SUPER_ADD(x, y) <a href="seq_elem.html">BOOST_PP_SEQ_ELEM</a>(y, <a href="seq_rest_n.html">BOOST_PP_SEQ_REST_N</a>(x, NUMBERS))
|
||||
|
||||
SUPER_ADD(100, 100) // expands to 200
|
||||
|
||||
#define SUPER_SUB(x, y) \
|
||||
<a href="seq_size.html">BOOST_PP_SEQ_SIZE</a>( \
|
||||
<a href="seq_rest_n.html">BOOST_PP_SEQ_REST_N</a>( \
|
||||
<a href="inc.html">BOOST_PP_INC</a>(y), \
|
||||
<a href="seq_first_n.html">BOOST_PP_SEQ_FIRST_N</a>( \
|
||||
<a href="inc.html">BOOST_PP_INC</a>(x), NUMBERS \
|
||||
) \
|
||||
) \
|
||||
) \
|
||||
/**/
|
||||
|
||||
SUPER_SUB(67, 25) // expands to 42
|
||||
</pre>
|
||||
<pre>#include <<a href="../headers/arithmetic/inc.html">boost/preprocessor/arithmetic/inc.hpp</a>><br>#include <<a href="../headers/seq/elem.html">boost/preprocessor/seq/elem.hpp</a>><br>#include <<a href="../headers/seq/first_n.html">boost/preprocessor/seq/first_n.hpp</a>><br>#include <<a href="../headers/seq/rest_n.html">boost/preprocessor/seq/rest_n.hpp</a>><br>#include <<a href="../headers/seq/size.html">boost/preprocessor/seq/size.hpp</a>><br><br>#define NUMBERS \<br> (0)(1)(2)(3)(4)(5)(6)(7)(8)(9) \<br> (10)(11)(12)(13)(14)(15)(16)(17)(18)(19) \<br> (20)(21)(22)(23)(24)(25)(26)(27)(28)(29) \<br> (30)(31)(32)(33)(34)(35)(36)(37)(38)(39) \<br> (40)(41)(42)(43)(44)(45)(46)(47)(48)(49) \<br> (50)(51)(52)(53)(54)(55)(56)(57)(58)(59) \<br> (60)(61)(62)(63)(64)(65)(66)(67)(68)(69) \<br> (70)(71)(72)(73)(74)(75)(76)(77)(78)(79) \<br> (80)(81)(82)(83)(84)(85)(86)(87)(88)(89) \<br> (90)(91)(92)(93)(94)(95)(96)(97)(98)(99) \<br> (100)(101)(102)(103)(104)(105)(106)(107)(108)(109) \<br> (110)(111)(112)(113)(114)(115)(116)(117)(118)(119) \<br> (120)(121)(122)(123)(124)(125)(126)(127)(128)(129) \<br> (130)(131)(132)(133)(134)(135)(136)(137)(138)(139) \<br> (140)(141)(142)(143)(144)(145)(146)(147)(148)(149) \<br> (150)(151)(152)(153)(154)(155)(156)(157)(158)(159) \<br> (160)(161)(162)(163)(164)(165)(166)(167)(168)(169) \<br> (170)(171)(172)(173)(174)(175)(176)(177)(178)(179) \<br> (180)(181)(182)(183)(184)(185)(186)(187)(188)(189) \<br> (190)(191)(192)(193)(194)(195)(196)(197)(198)(199) \<br> (200)(201)(202)(203)(204)(205)(206)(207)(208)(209) \<br> (210)(211)(212)(213)(214)(215)(216)(217)(218)(219) \<br> (220)(221)(222)(223)(224)(225)(226)(227)(228)(229) \<br> (230)(231)(232)(233)(234)(235)(236)(237)(238)(239) \<br> (240)(241)(242)(243)(244)(245)(246)(247)(248)(249) \<br> (250)(251)(252)(253)(254)(255)(256) \<br> /**/<br><br>#define SUPER_ADD(x, y) <a href="seq_elem.html">BOOST_PP_SEQ_ELEM</a>(y, <a href="seq_rest_n.html">BOOST_PP_SEQ_REST_N</a>(x, NUMBERS))<br><br>SUPER_ADD(100, 100) // expands to 200<br><br>#define SUPER_SUB(x, y) \<br> <a href="seq_size.html">BOOST_PP_SEQ_SIZE</a>( \<br> <a href="seq_rest_n.html">BOOST_PP_SEQ_REST_N</a>( \<br> <a href="inc.html">BOOST_PP_INC</a>(y), \<br> <a href="seq_first_n.html">BOOST_PP_SEQ_FIRST_N</a>( \<br> <a href="inc.html">BOOST_PP_INC</a>(x), NUMBERS \<br> ) \<br> ) \<br> ) \<br> /**/<br><br>SUPER_SUB(67, 25) // expands to 42<br></pre>
|
||||
</div>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
<br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</body>
|
||||
</html>
|
||||
|
34
doc/ref/seq_to_list.html
Normal file
34
doc/ref/seq_to_list.html
Normal file
@ -0,0 +1,34 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>BOOST_PP_SEQ_TO_LIST</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;"> The <b>BOOST_PP_SEQ_TO_LIST</b>
|
||||
macro converts a <i>seq</i> to a <i>list</i>. </div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code"> <b>BOOST_PP_SEQ_TO_LIST</b>(<i>seq</i>)
|
||||
</div>
|
||||
<h4>Arguments</h4>
|
||||
<dl><dt>seq</dt>
|
||||
<dd> The <i>seq</i> to be converted. </dd>
|
||||
</dl><b>See Also</b>
|
||||
<ul>
|
||||
<li><a href="limit_seq.html">BOOST_PP_LIMIT_SEQ</a></li>
|
||||
</ul>
|
||||
<h4>Requirements</h4>
|
||||
<div> <b>Header:</b> <a href="../headers/seq/to_list.html"><boost/preprocessor/seq/to_list.hpp></a>
|
||||
</div>
|
||||
<h4>Sample Code</h4>
|
||||
<div>
|
||||
<pre>#include <<a href="../headers/seq/to_list.html">boost/preprocessor/seq/to_list.hpp</a>><br><br><a href="seq_to_list.html">BOOST_PP_SEQ_TO_LIST</a>((x)(y)(z))<br> // expands to (x, (y, (z, <a href="nil.html">BOOST_PP_NIL</a>)))<br></pre>
|
||||
</div>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;"> <i><EFBFBD> Copyright Edward Diener 2011</i> </div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
|
||||
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@ -1,28 +1,38 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>BOOST_PP_TUPLE_EAT</title>
|
||||
<head>
|
||||
<title>BOOST_PP_TUPLE_EAT</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>BOOST_PP_TUPLE_EAT</b> macro expands to a macro that eats a <i>tuple</i> of the specified size.
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>BOOST_PP_TUPLE_EAT</b> macro expands to a macro that eats a <i>tuple</i>.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
<b>BOOST_PP_TUPLE_EAT</b>(<i>size</i>)
|
||||
</div>
|
||||
<b>BOOST_PP_TUPLE_EAT</b>(<i>size</i>)<br>
|
||||
<br>
|
||||
or<br>
|
||||
<br>
|
||||
<b>BOOST_PP_TUPLE_EAT</b>(<i>size</i>) <sup>(v)</sup><b></b><br>
|
||||
</div>
|
||||
<h4>Arguments</h4>
|
||||
<dl>
|
||||
<dt>size</dt>
|
||||
<dd>
|
||||
The size of the <i>tuple</i> to be eaten.
|
||||
Valid <i>tuple</i> sizes range from <i>0</i> to <b>BOOST_PP_LIMIT_TUPLE</b>.
|
||||
Valid <i>tuple</i> sizes range from <i>1</i> to <b>BOOST_PP_LIMIT_TUPLE</b>.
|
||||
</dd>
|
||||
</dl>
|
||||
<h4>Remarks</h4>
|
||||
<div>
|
||||
The <i>size</i> argument must be the actual size of the <i>tuple</i>.
|
||||
</div>
|
||||
The <i>size</i> argument must be the actual size of the <i>tuple</i> in the non-variadic version. <br>
|
||||
<br>For the variadic version <sup>(v)</sup> the
|
||||
size may be left out
|
||||
completely so that the macro can be invoked as BOOST_PP_TUPLE_EAT(); you may get a warning from some compilers, but the
|
||||
functionality will still work. If you specify a size in the variadic
|
||||
version, it will be ignored, but the warning from some compilers will
|
||||
not occur.<br>
|
||||
</div>
|
||||
<h4>See Also</h4>
|
||||
<ul>
|
||||
<li><a href="limit_tuple.html">BOOST_PP_LIMIT_TUPLE</a></li>
|
||||
@ -32,27 +42,17 @@
|
||||
<b>Header:</b> <a href="../headers/tuple/eat.html"><boost/preprocessor/tuple/eat.hpp></a>
|
||||
</div>
|
||||
<h4>Sample Code</h4>
|
||||
<div><pre>
|
||||
#include <<a href="../headers/control/if.html">boost/preprocessor/control/if.hpp</a>>
|
||||
#include <<a href="../headers/tuple/eat.html">boost/preprocessor/tuple/eat.hpp</a>>
|
||||
|
||||
#define OP(a, b) (a b)
|
||||
|
||||
#define MACRO(n) <a href="if.html">BOOST_PP_IF</a>(n, OP, <a href="tuple_eat.html">BOOST_PP_TUPLE_EAT</a>(2))(1, 2)
|
||||
|
||||
MACRO(0) // expands to nothing
|
||||
MACRO(1) // expands to (1, 2)
|
||||
</pre></div>
|
||||
<div><pre>#include <<a href="../headers/control/if.html">boost/preprocessor/control/if.hpp</a>><br>#include <<a href="../headers/tuple/eat.html">boost/preprocessor/tuple/eat.hpp</a>><br><br>#define OP(a, b) (a b)<br><br>#define MACRO(n) <a href="if.html">BOOST_PP_IF</a>(n, OP, <a href="tuple_eat.html">BOOST_PP_TUPLE_EAT</a>(2))(1, 2)<br><br>// or for the variadic version <sup>(v)</sup><br><br>#define MACRO(n) <a href="if.html">BOOST_PP_IF</a>(n, OP, <a href="file:///C:/Programming/VersionControl/sandbox/variadics/libs/preprocessor/doc/ref/tuple_eat.html">BOOST_PP_TUPLE_EAT</a>())(1, 2)<br><br>MACRO(0) // expands to nothing<br>MACRO(1) // expands to (1, 2)<br></pre></div>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
<br><i><EFBFBD> Copyright Paul Mensonides 2002<br>
|
||||
</i><i><EFBFBD> Copyright Edward Diener 2011</i><br>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
</body>
|
||||
</html>
|
@ -1,22 +1,26 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>BOOST_PP_TUPLE_ELEM</title>
|
||||
<head>
|
||||
<title>BOOST_PP_TUPLE_ELEM</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>BOOST_PP_TUPLE_ELEM</b> macro extracts an element from a <i>tuple</i>.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
<b>BOOST_PP_TUPLE_ELEM</b>(<i>size</i>, <i>i</i>, <i>tuple</i>)
|
||||
</div>
|
||||
<b>BOOST_PP_TUPLE_ELEM</b>(<i>size</i>, <i>i</i>, <i>tuple</i>)<sup></sup><br>
|
||||
<br>
|
||||
or<br>
|
||||
<br>
|
||||
<b>BOOST_PP_TUPLE_ELEM</b>(<i>...</i>) <sup>(v)</sup><b></b><br>
|
||||
</div>
|
||||
<h4>Arguments</h4>
|
||||
<dl>
|
||||
<dt>size</dt>
|
||||
<dd>
|
||||
The size of the <i>tuple</i>.
|
||||
Valid <i>tuple</i> sizes range from <i>0</i> to <b>BOOST_PP_LIMIT_TUPLE</b>.
|
||||
Valid <i>tuple</i> sizes range from <i>1</i> to <b>BOOST_PP_LIMIT_TUPLE</b>.
|
||||
</dd>
|
||||
<dt>i</dt>
|
||||
<dd>
|
||||
@ -31,7 +35,10 @@
|
||||
<h4>Remarks</h4>
|
||||
<div>
|
||||
The <i>size</i> argument must be the actual size of the <i>tuple</i>,
|
||||
and <i>i</i> must be less than the size of the <i>tuple</i>.
|
||||
and <i>i</i> must be less than the size of the <i>tuple</i>. <br>
|
||||
<br>You can
|
||||
invoke the variadic version as BOOST_PP_TUPLE_ELEM(<i>i</i>,<i>tuple</i>) or
|
||||
BOOST_PP_TUPLE_ELEM(<i>size</i>,<i>i</i>,<i>tuple</i>).
|
||||
</div>
|
||||
<h4>See Also</h4>
|
||||
<ul>
|
||||
@ -42,24 +49,17 @@
|
||||
<b>Header:</b> <a href="../headers/tuple/elem.html"><boost/preprocessor/tuple/elem.hpp></a>
|
||||
</div>
|
||||
<h4>Sample Code</h4>
|
||||
<div><pre>
|
||||
#include <<a href="../headers/tuple/elem.html">boost/preprocessor/tuple/elem.hpp</a>>
|
||||
|
||||
#define TUPLE (a, b, c, d)
|
||||
|
||||
<a href="tuple_elem.html">BOOST_PP_TUPLE_ELEM</a>(4, 0, TUPLE) // expands to a
|
||||
<a href="tuple_elem.html">BOOST_PP_TUPLE_ELEM</a>(4, 3, TUPLE) // expands to d
|
||||
</pre></div>
|
||||
<div><pre>#include <<a href="../headers/tuple/elem.html">boost/preprocessor/tuple/elem.hpp</a>><br><br>#define TUPLE (a, b, c, d)<br><br><a href="tuple_elem.html">BOOST_PP_TUPLE_ELEM</a>(4, 0, TUPLE) // expands to a<br><a href="tuple_elem.html">BOOST_PP_TUPLE_ELEM</a>(4, 3, TUPLE) // expands to d<br><br>// or for the variadic version <sup>(v)</sup><br><br><a href="file:///C:/Programming/VersionControl/sandbox/variadics/libs/preprocessor/doc/ref/tuple_elem.html">BOOST_PP_TUPLE_ELEM</a>(0, TUPLE) // expands to a in the variadic version<br><a href="file:///C:/Programming/VersionControl/sandbox/variadics/libs/preprocessor/doc/ref/tuple_elem.html">BOOST_PP_TUPLE_ELEM</a>(3, TUPLE) // expands to d in the variadic version<br></pre></div>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
<br><i><EFBFBD> Copyright Paul Mensonides 2002<br>
|
||||
</i><i><EFBFBD> Copyright Edward Diener 2011</i><br>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
</body>
|
||||
</html>
|
55
doc/ref/tuple_enum.html
Normal file
55
doc/ref/tuple_enum.html
Normal file
@ -0,0 +1,55 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>BOOST_PP_TUPLE_ENUM</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;"> The <b>BOOST_PP_TUPLE_ENUM</b> macro converts a <i>tuple</i> to its comma-separated elements. The comma-separated elements are in the form of <i>variadic data</i>. </div>
|
||||
<h4> Usage </h4>
|
||||
<div class="code"> <b>BOOST_PP_TUPLE_ENUM</b>(<i>size,tuple</i>)<br>
|
||||
<br>
|
||||
or<br>
|
||||
<br>
|
||||
<b>BOOST_PP_TUPLE_ENUM</b>(<i>...</i>) <sup>(v)</sup><b></b><br>
|
||||
</div>
|
||||
<h4> Arguments </h4>
|
||||
<dl>
|
||||
<dt>size</dt>
|
||||
<dd>
|
||||
The size of the <i>tuple</i>.
|
||||
Valid <i>tuple</i> sizes range from <i>1</i> to <b>BOOST_PP_LIMIT_TUPLE</b>. <br>
|
||||
</dd>
|
||||
<dt>tuple</dt>
|
||||
<dd> The <i>tuple</i> whose elements are to be converted. </dd>
|
||||
</dl>
|
||||
<h4> Remarks </h4>
|
||||
<div>
|
||||
<br>You can
|
||||
invoke the variadic version <sup>(v)</sup> as BOOST_PP_TUPLE_ENUM(<i>tuple</i>) or
|
||||
BOOST_PP_TUPLE_ENUM(<i>size</i>,<i>tuple</i>).<br>
|
||||
</div>
|
||||
<h4>See Also</h4>
|
||||
<ul>
|
||||
<li><a href="limit_tuple.html">BOOST_PP_LIMIT_TUPLE</a><br>
|
||||
</li>
|
||||
</ul>
|
||||
<h4> Requirements </h4>
|
||||
<div> <b>Header:</b> <a href="../headers/tuple/enum.html"><boost/preprocessor/tuple/enum.hpp></a>
|
||||
</div>
|
||||
<h4> Sample Code </h4>
|
||||
<div>
|
||||
<pre>#include <<a href="../headers/tuple/enum.html">boost/preprocessor/tuple/enum.hpp</a>><br><br>#define TUPLE (B,O,O,S,T)<br><br><a href="tuple_enum.html">BOOST_PP_TUPLE_ENUM</a>(5,TUPLE) // expands to B, O, O, S, T<br><br>// or for the variadic version <sup>(v)<br><br></sup><a href="tuple_enum.html">BOOST_PP_TUPLE_ENUM</a>(TUPLE) // expands to B, O, O, S, T<br></pre>
|
||||
</div>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;"> <i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
<br>
|
||||
<i><EFBFBD> Copyright Paul Mensonides 2002<br>
|
||||
</i><i><EFBFBD> Copyright Edward Diener 2011</i><br>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
|
||||
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@ -1,27 +1,38 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>BOOST_PP_TUPLE_REM</title>
|
||||
<head>
|
||||
<title>BOOST_PP_TUPLE_REM</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>BOOST_PP_TUPLE_REM</b> macro expands to a macro that removes the parentheses from a <i>tuple</i> of the specified size.
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>BOOST_PP_TUPLE_REM</b> macro expands to a macro that removes the parentheses from a <i>tuple</i>.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
<b>BOOST_PP_TUPLE_REM</b>(<i>size</i>)
|
||||
<b>BOOST_PP_TUPLE_REM</b>(<i>size</i>)<br>
|
||||
<br>
|
||||
or<br>
|
||||
<br>
|
||||
<b>BOOST_PP_TUPLE_REM</b>(<i>size</i>) <sup>(v)</sup><br>
|
||||
</div>
|
||||
<h4>Arguments</h4>
|
||||
<dl>
|
||||
<dt>size</dt>
|
||||
<dd>
|
||||
The size of the <i>tuple</i> from which the parentheses are to be removed.
|
||||
Valid <i>tuple</i> sizes range from <i>0</i> to <b>BOOST_PP_LIMIT_TUPLE</b>.
|
||||
Valid <i>tuple</i> sizes range from <i>1</i> to <b>BOOST_PP_LIMIT_TUPLE</b>.
|
||||
</dd>
|
||||
</dl>
|
||||
<h4>Remarks</h4>
|
||||
<div>
|
||||
The <i>size</i> argument must be the actual size of the <i>tuple</i>.
|
||||
The <i>size</i> argument must be the actual size of the <i>tuple</i> in the non-variadic version.<br>
|
||||
<br>
|
||||
For the variadic version <sup>(v)</sup> the
|
||||
size may be left out
|
||||
completely so that the macro can be invoked as BOOST_PP_TUPLE_REM(); you may get a warning from some compilers, but the
|
||||
functionality will still work. If you specify a size in the variadic
|
||||
version, it will be ignored, but the warning from some compilers will
|
||||
not occur.<br>
|
||||
</div>
|
||||
<h4>See Also</h4>
|
||||
<ul>
|
||||
@ -32,21 +43,17 @@
|
||||
<b>Header:</b> <a href="../headers/tuple/rem.html"><boost/preprocessor/tuple/rem.hpp></a>
|
||||
</div>
|
||||
<h4>Sample Code</h4>
|
||||
<div><pre>
|
||||
#include <<a href="../headers/tuple/elem.html">boost/preprocessor/tuple/rem.hpp</a>>
|
||||
|
||||
<a href="tuple_rem.html">BOOST_PP_TUPLE_REM</a>(3)(x, y, z) // expands to x, y, z
|
||||
</pre></div>
|
||||
<div><pre>#include <<a href="../headers/tuple/elem.html">boost/preprocessor/tuple/rem.hpp</a>><br><br><a href="tuple_rem.html">BOOST_PP_TUPLE_REM</a>(3)(x, y, z) // expands to x, y, z<br><br>// or for the variadic version <sup>(v)</sup><br><br><a href="tuple_rem.html">BOOST_PP_TUPLE_REM</a>()(x, y, z) // expands to x, y, z<br></pre></div>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
<br><i><EFBFBD> Copyright Paul Mensonides 2002<br>
|
||||
</i><i><EFBFBD> Copyright Edward Diener 2011</i><br>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
</body>
|
||||
</html>
|
@ -1,22 +1,26 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>BOOST_PP_TUPLE_REM_CTOR</title>
|
||||
<head>
|
||||
<title>BOOST_PP_TUPLE_REM_CTOR</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>BOOST_PP_TUPLE_REM_CTOR</b> macro removes the parentheses from a <i>tuple</i> of the specified size.
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>BOOST_PP_TUPLE_REM_CTOR</b> macro removes the parentheses from a <i>tuple</i>.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
<b>BOOST_PP_TUPLE_REM_CTOR</b>(<i>size</i>, <i>tuple</i>)
|
||||
<b>BOOST_PP_TUPLE_REM_CTOR</b>(<i>size</i>, <i>tuple</i>)<br>
|
||||
<br>
|
||||
or<br>
|
||||
<br>
|
||||
<b>BOOST_PP_TUPLE_REM_CTOR</b>(<i>...</i>) <sup>(v)</sup><br>
|
||||
</div>
|
||||
<h4>Arguments</h4>
|
||||
<dl>
|
||||
<dt>size</dt>
|
||||
<dd>
|
||||
The size of the <i>tuple</i> from which the parentheses are to be removed.
|
||||
Valid <i>tuple</i> sizes range from <i>0</i> to <b>BOOST_PP_LIMIT_TUPLE</b>.
|
||||
Valid <i>tuple</i> sizes range from <i>1</i> to <b>BOOST_PP_LIMIT_TUPLE</b>.
|
||||
</dd>
|
||||
<dt>tuple</dt>
|
||||
<dd>
|
||||
@ -25,7 +29,11 @@
|
||||
</dl>
|
||||
<h4>Remarks</h4>
|
||||
<div>
|
||||
The <i>size</i> argument must be the actual size of <i>tuple</i>.
|
||||
The <i>size</i> argument must be the actual size of <i>tuple</i>.<br>
|
||||
<br>
|
||||
You can
|
||||
invoke the variadic version <sup>(v)</sup> as BOOST_PP_TUPLE_REM_CTOR(<i>tuple</i>) or
|
||||
BOOST_PP_TUPLE_REM_CTOR(<i>size</i>,<i>tuple</i>).<br>
|
||||
</div>
|
||||
<h4>See Also</h4>
|
||||
<ul>
|
||||
@ -36,21 +44,18 @@
|
||||
<b>Header:</b> <a href="../headers/tuple/rem.html"><boost/preprocessor/tuple/rem.hpp></a>
|
||||
</div>
|
||||
<h4>Sample Code</h4>
|
||||
<div><pre>
|
||||
#include <<a href="../headers/tuple/elem.html">boost/preprocessor/tuple/rem.hpp</a>>
|
||||
|
||||
<a href="tuple_rem_ctor.html">BOOST_PP_TUPLE_REM_CTOR</a>(3, (x, y, z)) // expands to x, y, z
|
||||
</pre></div>
|
||||
<div><pre>#include <<a href="../headers/tuple/elem.html">boost/preprocessor/tuple/rem.hpp</a>><br><br><a href="tuple_rem_ctor.html">BOOST_PP_TUPLE_REM_CTOR</a>(3, (x, y, z)) // expands to x, y, z<br><br>// or for the variadic version <sup>(v)<br><br></sup><a href="tuple_rem_ctor.html">BOOST_PP_TUPLE_REM_CTOR</a>((x, y, z)) // expands to x, y, z<br></pre></div>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
<br><i><EFBFBD> Copyright Paul Mensonides 2002<br>
|
||||
</i><i><EFBFBD> Copyright Edward Diener 2011</i><br>
|
||||
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
</body>
|
||||
</html>
|
@ -1,22 +1,27 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>BOOST_PP_TUPLE_REVERSE</title>
|
||||
<head>
|
||||
<title>BOOST_PP_TUPLE_REVERSE</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>BOOST_PP_TUPLE_REVERSE</b> macro reverses a <i>tuple</i> of the specified size.
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>BOOST_PP_TUPLE_REVERSE</b> macro reverses a <i>tuple</i>.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
<b>BOOST_PP_TUPLE_REVERSE</b>(<i>size</i>, <i>tuple</i>)
|
||||
<b>BOOST_PP_TUPLE_REVERSE</b>(<i>size</i>, <i>tuple</i>)<br>
|
||||
<br>
|
||||
or<br>
|
||||
<br>
|
||||
<b>BOOST_PP_TUPLE_REVERSE</b>(<i>...</i>) <sup>(v)</sup><br>
|
||||
|
||||
</div>
|
||||
<h4>Arguments</h4>
|
||||
<dl>
|
||||
<dt>size</dt>
|
||||
<dd>
|
||||
The size of the <i>tuple</i> to be reversed.
|
||||
Valid <i>tuple</i> sizes range from <i>0</i> to <b>BOOST_PP_LIMIT_TUPLE</b>.
|
||||
Valid <i>tuple</i> sizes range from <i>1</i> to <b>BOOST_PP_LIMIT_TUPLE</b>.
|
||||
</dd>
|
||||
<dt>tuple</dt>
|
||||
<dd>
|
||||
@ -25,7 +30,11 @@
|
||||
</dl>
|
||||
<h4>Remarks</h4>
|
||||
<div>
|
||||
The <i>size</i> argument must be the actual size of the <i>tuple</i>.
|
||||
The <i>size</i> argument must be the actual size of the <i>tuple</i>.<br>
|
||||
<br>
|
||||
You can
|
||||
invoke the variadic version <sup>(v)</sup> as BOOST_PP_TUPLE_REVERSE(<i>tuple</i>) or
|
||||
BOOST_PP_TUPLE_REVERSE(<i>size</i>,<i>tuple</i>).<br>
|
||||
</div>
|
||||
<h4>See Also</h4>
|
||||
<ul>
|
||||
@ -36,21 +45,17 @@
|
||||
<b>Header:</b> <a href="../headers/tuple/reverse.html"><boost/preprocessor/tuple/reverse.hpp></a>
|
||||
</div>
|
||||
<h4>Sample Code</h4>
|
||||
<div><pre>
|
||||
#include <<a href="../headers/tuple/reverse.html">boost/preprocessor/tuple/reverse.hpp</a>>
|
||||
|
||||
<a href="tuple_reverse.html">BOOST_PP_TUPLE_REVERSE</a>(3, (x, y, z)) // expands to (z, y, x)
|
||||
</pre></div>
|
||||
<div><pre>#include <<a href="../headers/tuple/reverse.html">boost/preprocessor/tuple/reverse.hpp</a>><br><br><a href="tuple_reverse.html">BOOST_PP_TUPLE_REVERSE</a>(3, (x, y, z)) // expands to (z, y, x)<br><br>// or for the variadic version <sup>(v)<br><br></sup><a href="tuple_reverse.html">BOOST_PP_TUPLE_REVERSE</a>((x, y, z)) // expands to (z, y, x)<br></pre></div>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
<br><i><EFBFBD> Copyright Paul Mensonides 2002<br>
|
||||
</i><i><EFBFBD> Copyright Edward Diener 2011</i><br>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
</body>
|
||||
</html>
|
32
doc/ref/tuple_size.html
Normal file
32
doc/ref/tuple_size.html
Normal file
@ -0,0 +1,32 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>BOOST_PP_TUPLE_SIZE</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;"> The <b>BOOST_PP_TUPLE_SIZE</b> macro
|
||||
expands to the size of the <i>tuple</i> passed to it. </div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code"> <b>BOOST_PP_TUPLE_SIZE</b>(<i>tuple</i>) <sup>(v)</sup><br>
|
||||
</div>
|
||||
<h4>Arguments</h4>
|
||||
<dl>
|
||||
<dt>tuple</dt>
|
||||
<dd> A <i>tuple</i> whose size is to be extracted. </dd>
|
||||
</dl>
|
||||
<h4>Requirements</h4>
|
||||
<div> <b>Header:</b> <a href="../headers/tuple/size.html"><boost/preprocessor/tuple/size.hpp></a>
|
||||
</div>
|
||||
<h4>Sample Code</h4>
|
||||
<div>
|
||||
<pre>#include <<a href="../headers/tuple/size.html">boost/preprocessor/tuple/size.hpp</a>><br><br>#define TUPLE (x, y, z)<br><br><a href="tuple_size.html">BOOST_PP_TUPLE_SIZE</a>(TUPLE) // expands to 3<br></pre>
|
||||
</div>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;"> <i></i><i><EFBFBD> Copyright Edward Diener 2011</i> </div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
|
||||
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
50
doc/ref/tuple_to_array.html
Normal file
50
doc/ref/tuple_to_array.html
Normal file
@ -0,0 +1,50 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>BOOST_PP_TUPLE_TO_ARRAY</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;"> The <b>BOOST_PP_TUPLE_TO_ARRAY</b>
|
||||
macro
|
||||
converts a <i>tuple</i> to an <i>array</i>. </div>
|
||||
<h4> Usage </h4>
|
||||
<div class="code"> <b>BOOST_PP_TUPLE_TO_ARRAY</b>(<i>size,tuple</i>)<br>
|
||||
<br>
|
||||
or<br>
|
||||
<br>
|
||||
<b>BOOST_PP_TUPLE_TO_ARRAY</b>(<i>...</i>) <sup>(v)</sup><br>
|
||||
</div>
|
||||
<h4> Arguments </h4>
|
||||
<dl>
|
||||
<dt>size</dt>
|
||||
<dd> The size of the <i>tuple</i>. Valid <i>tuple</i> sizes
|
||||
range from <i>1</i> to <b>BOOST_PP_LIMIT_TUPLE</b>. <br>
|
||||
</dd>
|
||||
<dt>tuple</dt>
|
||||
<dd> The <i>tuple</i> to be converted.</dd>
|
||||
</dl>
|
||||
<h4>Remarks</h4>
|
||||
<div>
|
||||
The <i>size</i> argument must be the actual size of the <i>tuple</i>.<br>
|
||||
<br>
|
||||
You can
|
||||
invoke the variadic version <sup>(v)</sup> as BOOST_PP_TUPLE_TO_ARRAY(<i>tuple</i>) or
|
||||
BOOST_PP_TUPLE_TO_ARRAY(<i>size</i>,<i>tuple</i>).<a href="../headers/seq/to_array.html"></a>
|
||||
</div>
|
||||
<h4> Requirements </h4>
|
||||
<div> <b>Header:</b> <a href="../headers/tuple/to_array.html"><boost/preprocessor/tuple/to_array.hpp></a>
|
||||
</div>
|
||||
<h4> Sample Code </h4>
|
||||
<div>
|
||||
<pre>#include <<a href="../headers/tuple/to_array.html">boost/preprocessor/tuple/to_array.hpp</a>><br><br>#define TUPLE (a,b,c)<br><br><a href="tuple_to_array.html">BOOST_PP_TUPLE_TO_ARRAY</a>(3,TUPLE) // expands to (3, (a, b, c))<br><br>// or for the variadic version <sup>(v)<br><br></sup><a href="tuple_to_array.html">BOOST_PP_TUPLE_TO_ARRAY</a>(TUPLE) // expands to (3, (a, b, c))<br></pre>
|
||||
</div>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;"> <i><EFBFBD> Copyright Edward Diener 2011</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
|
||||
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
@ -1,22 +1,26 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>BOOST_PP_TUPLE_TO_LIST</title>
|
||||
<head>
|
||||
<title>BOOST_PP_TUPLE_TO_LIST</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>BOOST_PP_TUPLE_TO_LIST</b> macro converts a <i>tuple</i> to a <i>list</i>.
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code">
|
||||
<b>BOOST_PP_TUPLE_TO_LIST</b>(<i>size</i>, <i>tuple</i>)
|
||||
<b>BOOST_PP_TUPLE_TO_LIST</b>(<i>size</i>, <i>tuple</i>)<br>
|
||||
<br>
|
||||
or<br>
|
||||
<br>
|
||||
<b>BOOST_PP_TUPLE_TO_LIST</b>(<i>...</i>) <sup>(v)</sup><br>
|
||||
</div>
|
||||
<h4>Arguments</h4>
|
||||
<dl>
|
||||
<dt>size</dt>
|
||||
<dd>
|
||||
The size of the <i>tuple</i> to be converted.
|
||||
Valid <i>tuple</i> sizes range from <i>0</i> to <b>BOOST_PP_LIMIT_TUPLE</b>.
|
||||
Valid <i>tuple</i> sizes range from <i>1</i> to <b>BOOST_PP_LIMIT_TUPLE</b>.
|
||||
</dd>
|
||||
<dt>tuple</dt>
|
||||
<dd>
|
||||
@ -25,7 +29,11 @@
|
||||
</dl>
|
||||
<h4>Remarks</h4>
|
||||
<div>
|
||||
The <i>size</i> argument must be the actual size of the <i>tuple</i>.
|
||||
The <i>size</i> argument must be the actual size of the <i>tuple</i>.<br>
|
||||
<br>
|
||||
You can
|
||||
invoke the variadic version <sup>(v)</sup> as BOOST_PP_TUPLE_TO_LIST(<i>tuple</i>) or
|
||||
BOOST_PP_TUPLE_TO_LIST(<i>size</i>,<i>tuple</i>).<br>
|
||||
</div>
|
||||
<h4>See Also</h4>
|
||||
<ul>
|
||||
@ -36,22 +44,17 @@
|
||||
<b>Header:</b> <a href="../headers/tuple/to_list.html"><boost/preprocessor/tuple/to_list.hpp></a>
|
||||
</div>
|
||||
<h4>Sample Code</h4>
|
||||
<div><pre>
|
||||
#include <<a href="../headers/tuple/to_list.html">boost/preprocessor/tuple/to_list.hpp</a>>
|
||||
|
||||
<a href="tuple_to_list.html">BOOST_PP_TUPLE_TO_LIST</a>(3, (x, y, z))
|
||||
// expands to (x, (y, (z, <a href="nil.html">BOOST_PP_NIL</a>)))
|
||||
</pre></div>
|
||||
<div><pre>#include <<a href="../headers/tuple/to_list.html">boost/preprocessor/tuple/to_list.hpp</a>><br><br><a href="tuple_to_list.html">BOOST_PP_TUPLE_TO_LIST</a>(3, (x, y, z))<br> // expands to (x, (y, (z, <a href="nil.html">BOOST_PP_NIL</a>)))<br><br>// or for the variadic version <sup>(v)<br><br></sup><a href="tuple_to_list.html">BOOST_PP_TUPLE_TO_LIST</a>((x, y, z))<br> // expands to (x, (y, (z, <a href="nil.html">BOOST_PP_NIL</a>)))<br></pre></div>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
<br><i><EFBFBD> Copyright Paul Mensonides 2002<br>
|
||||
</i><i><EFBFBD> Copyright Edward Diener 2011</i><br>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
</body>
|
||||
</html>
|
@ -1,57 +1,51 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>BOOST_PP_TUPLE_TO_SEQ</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;">
|
||||
The <b>BOOST_PP_TUPLE_TO_SEQ</b> macro converts a <i>tuple</i> to an <i>seq</i>.
|
||||
</div>
|
||||
<h4>
|
||||
Usage
|
||||
</h4>
|
||||
<div class="code">
|
||||
<b>BOOST_PP_TUPLE_TO_SEQ</b>(<i>size</i>, <i>tuple</i>)
|
||||
</div>
|
||||
<h4>
|
||||
Arguments
|
||||
</h4>
|
||||
<dl>
|
||||
<dt>size</dt>
|
||||
<dd>
|
||||
The number of elements in <i>tuple</i>.
|
||||
</dd>
|
||||
<dt>tuple</dt>
|
||||
<dd>
|
||||
The <i>tuple</i> to be converted.
|
||||
</dd>
|
||||
</dl>
|
||||
<h4>
|
||||
Requirements
|
||||
</h4>
|
||||
<div>
|
||||
<b>Header:</b> <a href="../headers/tuple/to_seq.html"><boost/preprocessor/tuple/to_seq.hpp></a>
|
||||
</div>
|
||||
<h4>
|
||||
Sample Code
|
||||
</h4>
|
||||
<div>
|
||||
<pre>
|
||||
#include <<a href="../headers/tuple/to_seq.html">boost/preprocessor/tuple/to_seq.hpp</a>>
|
||||
|
||||
<a href="tuple_to_seq.html">BOOST_PP_TUPLE_TO_SEQ</a>(3, (a, b, c)) // expands to (a)(b)(c)
|
||||
</pre>
|
||||
</div>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;">
|
||||
<i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
</br><i><EFBFBD> Copyright Paul Mensonides 2002</i>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href=
|
||||
"http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
<head>
|
||||
<title>BOOST_PP_TUPLE_TO_SEQ</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;"> The <b>BOOST_PP_TUPLE_TO_SEQ</b> macro
|
||||
converts a <i>tuple</i> to an <i>seq</i>. </div>
|
||||
<h4> Usage </h4>
|
||||
<div class="code"> <b>BOOST_PP_TUPLE_TO_SEQ</b>(<i>size</i>, <i>tuple</i>)<br>
|
||||
<br>
|
||||
or<br>
|
||||
<br>
|
||||
<b>BOOST_PP_TUPLE_TO_SEQ</b>(<i>...</i>) <sup>(v)</sup><br>
|
||||
</div>
|
||||
<h4> Arguments </h4>
|
||||
<dl>
|
||||
<dt>size</dt>
|
||||
<dd>
|
||||
The size of the <i>tuple</i> to be converted.
|
||||
Valid <i>tuple</i> sizes range from <i>1</i> to <b>BOOST_PP_LIMIT_TUPLE</b>. </dd>
|
||||
<dt>tuple</dt>
|
||||
<dd> The <i>tuple</i> to be converted. </dd>
|
||||
</dl>
|
||||
<h4>Remarks</h4>
|
||||
<div> The <i>size</i> argument must be the actual size of the <i>tuple</i>.<br>
|
||||
<br>
|
||||
You can
|
||||
invoke the variadic version <sup>(v)</sup> as BOOST_PP_TUPLE_TO_SEQ(<i>tuple</i>) or
|
||||
BOOST_PP_TUPLE_TO_SEQ(<i>size</i>,<i>tuple</i>).<a href="../headers/tuple/to_seq.html"></a>
|
||||
</div>
|
||||
<h4>Requirements </h4>
|
||||
<div> <b>Header:</b> <a href="../headers/tuple/to_seq.html"><boost/preprocessor/tuple/to_seq.hpp></a>
|
||||
</div>
|
||||
<h4> Sample Code </h4>
|
||||
<div>
|
||||
<pre>#include <<a href="../headers/tuple/to_seq.html">boost/preprocessor/tuple/to_seq.hpp</a>><br><br><a href="tuple_to_seq.html">BOOST_PP_TUPLE_TO_SEQ</a>(3, (a, b, c)) // expands to (a)(b)(c)<br><br>// or for the variadic version <sup>(v)<br><br></sup><a href="tuple_to_seq.html">BOOST_PP_TUPLE_TO_SEQ</a>((a, b, c)) // expands to (a)(b)(c)<br></pre>
|
||||
</div>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;"> <i><EFBFBD> Copyright <a href="http://www.housemarque.com" target="_top">Housemarque Oy</a> 2002</i>
|
||||
<br>
|
||||
<i><EFBFBD> Copyright Paul Mensonides 2002<br>
|
||||
</i><i><EFBFBD> Copyright Edward Diener 2011</i><br>
|
||||
</div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
|
||||
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
42
doc/ref/variadic_elem.html
Normal file
42
doc/ref/variadic_elem.html
Normal file
@ -0,0 +1,42 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>BOOST_PP_VARIADIC_ELEM</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;"> The <b>BOOST_PP_VARIADIC_ELEM</b> variadic macro
|
||||
extracts an element from <i>variadic data</i>. </div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code"> <b>BOOST_PP_VARIADIC_ELEM</b>(<i>i</i>, <i>...</i>) <sup>(v)</sup><br>
|
||||
</div>
|
||||
<h4>Arguments</h4>
|
||||
<dl><dt>i</dt>
|
||||
<dd> The zero-based index into the <i>variadic data</i> of the element to be
|
||||
extracted. Valid values range from <i>0</i> to the size of the variadic data - 1.
|
||||
</dd>
|
||||
<dt>...<br>
|
||||
</dt>
|
||||
<dd> The <i>variadic data</i> from which an element is to be extracted. </dd>
|
||||
</dl>
|
||||
<h4>Remarks</h4>
|
||||
<div>The index <i>i</i> must be less than the size of the <i>variadic data</i>. </div>
|
||||
<h4>See Also</h4>
|
||||
<ul>
|
||||
<li><a href="limit_variadic.html">BOOST_PP_LIMIT_VARIADIC</a></li>
|
||||
</ul>
|
||||
<h4>Requirements</h4>
|
||||
<div> <b>Header:</b> <a href="../headers/variadic/elem.html"><boost/preprocessor/variadic/elem.hpp></a>
|
||||
</div>
|
||||
<h4>Sample Code</h4>
|
||||
<div>
|
||||
<pre>#include <<a href="../headers/variadic/elem.html">boost/preprocessor/variadic/elem.hpp</a>><br><br>#define VAR_DATA a, b, c, d<br><br><a href="variadic_elem.html">BOOST_PP_VARIADIC_ELEM</a>(0, VAR_DATA) // expands to a<br><a href="variadic_elem.html">BOOST_PP_VARIADIC_ELEM</a>(3, VAR_DATA) // expands to d<br></pre>
|
||||
</div>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;"> <i></i><i><EFBFBD> Copyright Edward Diener 2011</i> </div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
|
||||
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
33
doc/ref/variadic_size.html
Normal file
33
doc/ref/variadic_size.html
Normal file
@ -0,0 +1,33 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>BOOST_PP_VARIADIC_SIZE</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;"> The <b>BOOST_PP_VARIADIC_SIZE</b> variadic macro
|
||||
expands to the size of the <i>variadic data </i>passed to it. </div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code"> <b>BOOST_PP_VARIADIC_SIZE</b>(<i>...</i>) <sup>(v)</sup><br>
|
||||
</div>
|
||||
<h4>Arguments</h4>
|
||||
<dl>
|
||||
<dt>...<br>
|
||||
</dt>
|
||||
<dd> <i>Variadic data </i>whose size is to be extracted. </dd>
|
||||
</dl>
|
||||
<h4>Requirements</h4>
|
||||
<div> <b>Header:</b> <a href="../headers/variadic/size.html"><boost/preprocessor/variadic/size.hpp></a>
|
||||
</div>
|
||||
<h4>Sample Code</h4>
|
||||
<div>
|
||||
<pre>#include <<a href="../headers/variadic/size.html">boost/preprocessor/variadic/size.hpp</a>><br><br>#define VAR_DATA x, y, z<br><br><a href="variadic_size.html">BOOST_PP_VARIADIC_SIZE</a>(VAR_DATA) // expands to 3<br></pre>
|
||||
</div>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;"> <i></i><i><EFBFBD> Copyright Edward Diener 2011</i> </div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
|
||||
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
32
doc/ref/variadic_to_array.html
Normal file
32
doc/ref/variadic_to_array.html
Normal file
@ -0,0 +1,32 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>BOOST_PP_VARIADIC_TO_ARRAY</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;"> The <b>BOOST_PP_VARIADIC_TO_ARRAY</b> variadic macro
|
||||
converts <i>variadic data</i> to an <i>array</i>. </div>
|
||||
<h4> Usage </h4>
|
||||
<div class="code"> <b>BOOST_PP_VARIADIC_TO_ARRAY</b>(<i>...</i>) <sup>(v)</sup><br>
|
||||
</div>
|
||||
<h4> Arguments </h4>
|
||||
<dl>
|
||||
<dt>...</dt>
|
||||
<dd> The <i>variadic data</i> to be converted. </dd>
|
||||
</dl>
|
||||
<h4> Requirements </h4>
|
||||
<div> <b>Header:</b> <a href="../headers/variadic/to_array.html"><boost/preprocessor/variadic/to_array.hpp></a>
|
||||
</div>
|
||||
<h4> Sample Code </h4>
|
||||
<div>
|
||||
<pre>#include <<a href="../headers/variadic/to_array.html">boost/preprocessor/variadic/to_array.hpp</a>><br><br>#define VAR_DATA a, b, c<br><br><a href="variadic_to_array.html">BOOST_PP_VARIADIC_TO_ARRAY</a>(VAR_DATA) // expands to (3, (a, b, c))<br></pre>
|
||||
</div>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;"> <i></i><i><EFBFBD> Copyright Edward Diener 2011</i> </div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
|
||||
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
31
doc/ref/variadic_to_list.html
Normal file
31
doc/ref/variadic_to_list.html
Normal file
@ -0,0 +1,31 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>BOOST_PP_VARIADIC_TO_LIST</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;"> The <b>BOOST_PP_VARIADIC_TO_LIST</b>
|
||||
variadic macro converts <i>variadic data</i> to a <i>list</i>. </div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code"> <b>BOOST_PP_VARIADIC_TO_LIST</b>(<i>...</i>) <sup>(v)</sup><br>
|
||||
</div>
|
||||
<h4>Arguments</h4>
|
||||
<dl><dt>...</dt>
|
||||
<dd> The <i>variadic data</i> to be converted.<br>
|
||||
</dd>
|
||||
</dl><h4>Requirements</h4>
|
||||
<div> <b>Header:</b> <a href="../headers/variadic/to_list.html"><boost/preprocessor/variadic/to_list.hpp></a>
|
||||
</div>
|
||||
<h4>Sample Code</h4>
|
||||
<div>
|
||||
<pre>#include <<a href="../headers/variadic/to_list.html">boost/preprocessor/variadic/to_list.hpp</a>><br><br><a href="variadic_to_list.html">BOOST_PP_VARIADIC_TO_LIST</a>(x, y, z)<br> // expands to (x, (y, (z, <a href="nil.html">BOOST_PP_NIL</a>)))<br></pre>
|
||||
</div>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;"> <i></i><i><EFBFBD> Copyright Edward Diener 2011</i> </div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
|
||||
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
32
doc/ref/variadic_to_seq.html
Normal file
32
doc/ref/variadic_to_seq.html
Normal file
@ -0,0 +1,32 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>BOOST_PP_VARIADIC_TO_SEQ</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;"> The <b>BOOST_PP_VARIADIC_TO_SEQ</b> variadic macro
|
||||
converts a <i>variadic data</i> to a <i>seq</i>. </div>
|
||||
<h4> Usage </h4>
|
||||
<div class="code"> <b>BOOST_PP_VARIADIC_TO_SEQ</b>(<i>...</i>) <sup>(v)</sup><br>
|
||||
</div>
|
||||
<h4> Arguments </h4>
|
||||
<dl><dt>...<br>
|
||||
</dt>
|
||||
<dd> The <i>variadic data</i> to be converted. </dd>
|
||||
</dl>
|
||||
<h4> Requirements </h4>
|
||||
<div> <b>Header:</b> <a href="../headers/variadic/to_seq.html"><boost/preprocessor/variadic/to_seq.hpp></a>
|
||||
</div>
|
||||
<h4> Sample Code </h4>
|
||||
<div>
|
||||
<pre>#include <<a href="../headers/variadic/to_seq.html">boost/preprocessor/variadic/to_seq.hpp</a>><br><br><a href="variadic_to_seq.html">BOOST_PP_VARIADIC_TO_SEQ</a>(a, b, c) // expands to (a)(b)(c)<br></pre>
|
||||
</div>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;"> <i></i><i><EFBFBD> Copyright Edward Diener 2011</i> </div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
|
||||
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
32
doc/ref/variadic_to_tuple.html
Normal file
32
doc/ref/variadic_to_tuple.html
Normal file
@ -0,0 +1,32 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>BOOST_PP_VARIADIC_TO_TUPLE</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;"> The <b>BOOST_PP_VARIADIC_TO_TUPLE</b> variadic macro
|
||||
converts <i>variadic data </i>to a <i>tuple</i>. </div>
|
||||
<h4> Usage </h4>
|
||||
<div class="code"> <b>BOOST_PP_VARIADIC_TO_TUPLE</b>(<i>...</i>)<sup> (v)</sup> </div>
|
||||
<h4> Arguments </h4>
|
||||
<dl>
|
||||
<dt>...<br>
|
||||
</dt>
|
||||
<dd> The <i>variadic data</i> to be converted. </dd>
|
||||
</dl>
|
||||
<h4> Requirements </h4>
|
||||
<div> <b>Header:</b> <a href="../headers/variadic/to_tuple.html"><boost/preprocessor/variadic/to_tuple.hpp></a>
|
||||
</div>
|
||||
<h4> Sample Code </h4>
|
||||
<div>
|
||||
<pre>#include <<a href="../headers/variadic/to_tuple.html">boost/preprocessor/variadic/to_tuple.hpp</a>><br><br>#define VAR_DATA a, b, c<br><br><a href="variadic_to_tuple.html">BOOST_PP_VARIADIC_TO_TUPLE</a>(VAR_DATA) // expands to (a, b, c)<br></pre>
|
||||
</div>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;"> <i></i><i><EFBFBD> Copyright Edward Diener 2011</i> </div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
|
||||
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
30
doc/ref/variadics.html
Normal file
30
doc/ref/variadics.html
Normal file
@ -0,0 +1,30 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>BOOST_PP_VARIADICS</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;"> The <b>BOOST_PP_VARIADICS </b>macro specifies whether variadic macro support exists.<br>
|
||||
</div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code"><b>BOOST_PP_VARIADICS</b><br>
|
||||
</div><b>Remarks</b>
|
||||
<div> The macro is an <i>object-like</i> macro. It is used in internal
|
||||
code to check for the presence of variadic macro support. It can be
|
||||
used by the end-user for the same purpose. The macro equals 1 if
|
||||
variadic macros are supported and 0 if they are not. </div><b>Requirements</b>
|
||||
<div> <b>Header:</b> <a href="../headers/config/variadics.html"><boost/preprocessor/config/variadics.hpp></a>
|
||||
</div>
|
||||
<h4>Sample Code</h4>
|
||||
<div>
|
||||
<pre>#include <<a href="../headers/config/variadics.html">boost/preprocessor/config/variadics.hpp</a>><br><br>#if <a href="variadics.html">BOOST_PP_VARIADICS</a><br>#define SOME_MACRO(...) // replacement list<br>#else<br>#define SOME_MACRO(param1,param2) // replacement list<br>#endif<br></pre>
|
||||
</div>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;"> <i></i><i><EFBFBD> Copyright Edward Diener 2011</i> </div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0.
|
||||
(See accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
|
||||
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
Reference in New Issue
Block a user