Compare commits

..

7 Commits

Author SHA1 Message Date
525b86db40 This commit was manufactured by cvs2svn to create tag
'Version_1_29_0'.

[SVN r15904]
2002-10-11 15:17:55 +00:00
5337152bea reinserted debug support
[SVN r15749]
2002-10-06 04:21:30 +00:00
147246aa85 replaced prefixes
[SVN r15744]
2002-10-05 22:01:01 +00:00
972a804561 fixed url
[SVN r15739]
2002-10-05 19:22:55 +00:00
cace45b77f lib cleanup
[SVN r15700]
2002-10-03 23:36:33 +00:00
afd693d86e This commit was manufactured by cvs2svn to create branch 'RC_1_29_0'.
[SVN r15698]
2002-10-03 23:21:49 +00:00
409aaa73d8 This commit was manufactured by cvs2svn to create branch 'RC_1_29_0'.
[SVN r15460]
2002-09-19 20:49:39 +00:00
576 changed files with 20549 additions and 9615 deletions

View File

@ -1,18 +1,15 @@
<html>
<head>
<title>data.html</title>
<link rel="stylesheet" type="text/css" href="styles.css">
<base target="desc">
</head>
<body>
<h4>
Data Types <small><a href="contents.html" target="index">[back]</a></small>
</h4>
<ul>
<li><a href="data/arrays.html">arrays</a></li>
<li><a href="data/lists.html">lists</a></li>
<li><a href="data/sequences.html">sequences</a></li>
<li><a href="data/tuples.html">tuples</a></li>
</ul>
</body>
<head>
<title>data.html</title>
<link rel="stylesheet" type="text/css" href="styles.css">
<base target="desc">
</head>
<body>
<h4>Data Types <small><a href="contents.html" target="index">[back]</a></small></h4>
<ul>
<li><a href="data/arrays.html">arrays</a></li>
<li><a href="data/lists.html">lists</a></li>
<li><a href="data/tuples.html">tuples</a></li>
</ul>
</body>
</html>

View File

@ -2,6 +2,7 @@
<head>
<title>arrays.html</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
<script language="javascript" type="text/javascript" src="../scripts.js"></script>
</head>
<body>
<h4>Arrays</h4>

View File

@ -2,6 +2,7 @@
<head>
<title>lists.html</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
<script language="javascript" type="text/javascript" src="../scripts.js"></script>
</head>
<body>
<h4>Lists</h4>

View File

@ -1,64 +0,0 @@
<html>
<head>
<title>sequences.html</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<h4>
Sequences
</h4>
<div>
A <i>sequence</i> (abbreviated to <i>seq</i>) is a group of adjacent parenthesized elements. For example,
</div>
<div class="code">
(<i>a</i>)(<i>b</i>)(<i>c</i>)
</div>
<div>
...is a <i>seq</i> of <i>3</i> elements--<i>a</i>, <i>b</i>, and <i>c</i>.
</div>
<div>
<i>Sequences</i> are data structures that merge the properties of both <i>lists</i> and
<i>tuples</i> with the exception that a <i>seq</i> cannot be empty.&nbsp;
Therefore, an "empty" <i>seq</i> is considered a special case scenario that
must be handled separately in C++.
</div>
<div class="code">
<pre>
#define SEQ (x)(y)(z)
#define REVERSE(s, state, elem) (elem) state
// append to head ^
BOOST_PP_SEQ_FOLD_LEFT(REVERSE, BOOST_PP_EMPTY, SEQ)()
// #1 #2
// 1) placeholder for "empty" seq
// 2) remove placeholder
#define SEQ_B (1)(2)(3)
#define INC(s, state, elem) state (BOOST_PP_INC(elem))
// append to tail ^
BOOST_PP_SEQ_FOLD_RIGHT(INC, BOOST_PP_SEQ_NIL, SEQ)
// ^
// special placeholder that will be "eaten"
// by appending to the tail
</pre>
</div>
<div>
<i>Sequences</i> are extremely efficient.&nbsp; Element access speed approaches
random access--even with <i>seqs</i> of up to <i>256</i> elements.&nbsp; This
is because element access (among other things) is implemented iteratively
rather than recursively.&nbsp; Therefore, elements can be accessed at extremely
high indices even on preprocessors with low maximum expansion depths.
</div>
<div>
Elements of a <i>seq</i> can be extracted with <b>BOOST_PP_SEQ_ELEM</b>.
</div>
<h4>
Primitives
</h4>
<ul>
<li>
<a href="../ref/seq_elem.html">BOOST_PP_SEQ_ELEM</a></li>
</ul>
</body>
</html>

View File

@ -2,6 +2,7 @@
<head>
<title>tuples.html</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
<script language="javascript" type="text/javascript" src="../scripts.js"></script>
</head>
<body>
<h4>Tuples</h4>

View File

@ -1,205 +1,165 @@
<html>
<head>
<title>headers.html</title>
<link rel="stylesheet" type="text/css" href="styles.css">
<base target="desc">
<style>
.ps { margin-left: 30px; }
</style>
</head>
<body>
<h4>
Headers <small><a href="contents.html" target="index">[back]</a></small>
</h4>
<ul>
<li>../</li>
<li class="ps">
<a href="headers/preprocessor.hpp.html">preprocessor.hpp</a></li>
<li><a href="headers/arithmetic.hpp.html">arithmetic.hpp</a></li>
<li>arithmetic/</li>
<li class="ps"><a href="headers/arithmetic/add.hpp.html">add.hpp</a></li>
<li class="ps"><a href="headers/arithmetic/dec.hpp.html">dec.hpp</a></li>
<li class="ps"><a href="headers/arithmetic/div.hpp.html">div.hpp</a></li>
<li class="ps"><a href="headers/arithmetic/inc.hpp.html">inc.hpp</a></li>
<li class="ps"><a href="headers/arithmetic/mod.hpp.html">mod.hpp</a></li>
<li class="ps"><a href="headers/arithmetic/mul.hpp.html">mul.hpp</a></li>
<li class="ps"><a href="headers/arithmetic/sub.hpp.html">sub.hpp</a></li>
<li><a href="headers/array.hpp.html">array.hpp</a></li>
<li>array/</li>
<li class="ps"><a href="headers/array/data.hpp.html">data.hpp</a></li>
<li class="ps"><a href="headers/array/elem.hpp.html">elem.hpp</a></li>
<li class="ps"><a href="headers/array/insert.hpp.html">insert.hpp</a></li>
<li class="ps"><a href="headers/array/pop_back.hpp.html">pop_back.hpp</a></li>
<li class="ps"><a href="headers/array/pop_front.hpp.html">pop_front.hpp</a></li>
<li class="ps"><a href="headers/array/push_back.hpp.html">push_back.hpp</a></li>
<li class="ps"><a href="headers/array/push_front.hpp.html">push_front.hpp</a></li>
<li class="ps"><a href="headers/array/remove.hpp.html">remove.hpp</a></li>
<li class="ps"><a href="headers/array/replace.hpp.html">replace.hpp</a></li>
<li class="ps"><a href="headers/array/reverse.hpp.html">reverse.hpp</a></li>
<li class="ps"><a href="headers/array/size.hpp.html">size.hpp</a></li>
<li><a href="headers/assert_msg.hpp.html">assert_msg.hpp*</a></li>
<li><a href="headers/cat.hpp.html">cat.hpp</a></li>
<li><a href="headers/comma.hpp.html">comma.hpp*</a></li>
<li><a href="headers/comma_if.hpp.html">comma_if.hpp*</a></li>
<li><a href="headers/comparison.hpp.html">comparison.hpp</a></li>
<li>comparison/</li>
<li class="ps"><a href="headers/comparison/equal.hpp.html">equal.hpp</a></li>
<li class="ps"><a href="headers/comparison/greater.hpp.html">greater.hpp</a></li>
<li class="ps"><a href="headers/comparison/greater_equal.hpp.html">greater_equal.hpp</a></li>
<li class="ps"><a href="headers/comparison/less.hpp.html">less.hpp</a></li>
<li class="ps"><a href="headers/comparison/less_equal.hpp.html">less_equal.hpp</a></li>
<li class="ps"><a href="headers/comparison/not_equal.hpp.html">not_equal.hpp</a></li>
<li>config/</li>
<li class="ps"><a href="headers/config/limits.hpp.html">limits.hpp</a></li>
<li><a href="headers/control.hpp.html">control.hpp</a></li>
<li>control/</li>
<li class="ps"><a href="headers/control/deduce_d.hpp.html">deduce_d.hpp</a></li>
<li class="ps"><a href="headers/control/expr_if.hpp.html">expr_if.hpp</a></li>
<li class="ps"><a href="headers/control/expr_iif.hpp.html">expr_iif.hpp</a></li>
<li class="ps"><a href="headers/control/if.hpp.html">if.hpp</a></li>
<li class="ps"><a href="headers/control/iif.hpp.html">iif.hpp</a></li>
<li class="ps"><a href="headers/control/while.hpp.html">while.hpp</a></li>
<li><a href="headers/debug.hpp.html">debug.hpp</a></li>
<li>debug/</li>
<li class="ps"><a href="headers/debug/assert.hpp.html">assert.hpp</a></li>
<li class="ps"><a href="headers/debug/line.hpp.html">line.hpp</a></li>
<li><a href="headers/dec.hpp.html">dec.hpp*</a></li>
<li><a href="headers/empty.hpp.html">empty.hpp*</a></li>
<li><a href="headers/enum.hpp.html">enum.hpp*</a></li>
<li><a href="headers/enum_params.hpp.html">enum_params.hpp*</a></li>
<li><a href="headers/enum_params_with_a_default.hpp.html">enum_params_with_a_default.hpp*</a></li>
<li><a href="headers/enum_params_with_defaults.hpp.html">enum_params_with_defaults.hpp*</a></li>
<li><a href="headers/enum_shifted.hpp.html">enum_shifted.hpp*</a></li>
<li><a href="headers/enum_shifted_params.hpp.html">enum_shifted_params.hpp*</a></li>
<li><a href="headers/expand.hpp.html">expand.hpp*</a></li>
<li><a href="headers/expr_if.hpp.html">expr_if.hpp*</a></li>
<li><a href="headers/facilities.hpp.html">facilities.hpp</a></li>
<li>facilities/</li>
<li class="ps"><a href="headers/facilities/apply.hpp.html">apply.hpp</a></li>
<li class="ps"><a href="headers/facilities/empty.hpp.html">empty.hpp</a></li>
<li class="ps"><a href="headers/facilities/expand.hpp.html">expand.hpp</a></li>
<li class="ps"><a href="headers/facilities/identity.hpp.html">identity.hpp</a></li>
<li class="ps"><a href="headers/facilities/intercept.hpp.html">intercept.hpp</a></li>
<li><a href="headers/for.hpp.html">for.hpp*</a></li>
<li><a href="headers/identity.hpp.html">identity.hpp*</a></li>
<li><a href="headers/if.hpp.html">if.hpp*</a></li>
<li><a href="headers/inc.hpp.html">inc.hpp*</a></li>
<li><a href="headers/iterate.hpp.html">iterate.hpp*</a></li>
<li><a href="headers/iteration.hpp.html">iteration.hpp</a></li>
<li>iteration/</li>
<li class="ps"><a href="headers/iteration/iterate.hpp.html">iterate.hpp</a></li>
<li class="ps"><a href="headers/iteration/local.hpp.html">local.hpp</a></li>
<li class="ps"><a href="headers/iteration/self.hpp.html">self.hpp</a></li>
<li><a href="headers/library.hpp.html">library.hpp</a></li>
<li><a href="headers/limits.hpp.html">limits.hpp*</a></li>
<li><a href="headers/list.hpp.html">list.hpp</a></li>
<li>list/</li>
<li class="ps"><a href="headers/list/adt.hpp.html">adt.hpp</a></li>
<li class="ps"><a href="headers/list/append.hpp.html">append.hpp</a></li>
<li class="ps"><a href="headers/list/at.hpp.html">at.hpp</a></li>
<li class="ps"><a href="headers/list/cat.hpp.html">cat.hpp</a></li>
<li class="ps"><a href="headers/list/enum.hpp.html">enum.hpp</a></li>
<li class="ps"><a href="headers/list/filter.hpp.html">filter.hpp</a></li>
<li class="ps"><a href="headers/list/first_n.hpp.html">first_n.hpp</a></li>
<li class="ps"><a href="headers/list/fold_left.hpp.html">fold_left.hpp</a></li>
<li class="ps"><a href="headers/list/fold_right.hpp.html">fold_right.hpp</a></li>
<li class="ps"><a href="headers/list/for_each.hpp.html">for_each.hpp</a></li>
<li class="ps"><a href="headers/list/for_each_i.hpp.html">for_each_i.hpp</a></li>
<li class="ps"><a href="headers/list/for_each_product.hpp.html">for_each_product.hpp</a></li>
<li class="ps"><a href="headers/list/rest_n.hpp.html">rest_n.hpp</a></li>
<li class="ps"><a href="headers/list/reverse.hpp.html">reverse.hpp</a></li>
<li class="ps"><a href="headers/list/size.hpp.html">size.hpp</a></li>
<li class="ps"><a href="headers/list/to_tuple.hpp.html">to_tuple.hpp</a></li>
<li class="ps"><a href="headers/list/transform.hpp.html">transform.hpp</a></li>
<li><a href="headers/logical.hpp.html">logical.hpp</a></li>
<li>logical/</li>
<li class="ps"><a href="headers/logical/and.hpp.html">and.hpp</a></li>
<li class="ps"><a href="headers/logical/bitand.hpp.html">bitand.hpp</a></li>
<li class="ps"><a href="headers/logical/bitnor.hpp.html">bitnor.hpp</a></li>
<li class="ps"><a href="headers/logical/bitor.hpp.html">bitor.hpp</a></li>
<li class="ps"><a href="headers/logical/bitxor.hpp.html">bitxor.hpp</a></li>
<li class="ps"><a href="headers/logical/bool.hpp.html">bool.hpp</a></li>
<li class="ps"><a href="headers/logical/compl.hpp.html">compl.hpp</a></li>
<li class="ps"><a href="headers/logical/nor.hpp.html">nor.hpp</a></li>
<li class="ps"><a href="headers/logical/not.hpp.html">not.hpp</a></li>
<li class="ps"><a href="headers/logical/or.hpp.html">or.hpp</a></li>
<li class="ps"><a href="headers/logical/xor.hpp.html">xor.hpp</a></li>
<li><a href="headers/max.hpp.html">max.hpp*</a></li>
<li><a href="headers/min.hpp.html">min.hpp*</a></li>
<li><a href="headers/punctuation.hpp.html">punctuation.hpp</a></li>
<li>punctuation/</li>
<li class="ps"><a href="headers/punctuation/comma.hpp.html">comma.hpp</a></li>
<li class="ps"><a href="headers/punctuation/comma_if.hpp.html">comma_if.hpp</a></li>
<li class="ps"><a href="headers/punctuation/paren.hpp.html">paren.hpp</a></li>
<li class="ps"><a href="headers/punctuation/paren_if.hpp.html">paren_if.hpp</a></li>
<li><a href="headers/repeat.hpp.html">repeat.hpp*</a></li>
<li><a href="headers/repeat_2nd.hpp.html">repeat_2nd.hpp*</a></li>
<li><a href="headers/repeat_3rd.hpp.html">repeat_3rd.hpp*</a></li>
<li><a href="headers/repeat_from_to.hpp.html">repeat_from_to.hpp*</a></li>
<li><a href="headers/repeat_from_to_2nd.hpp.html">repeat_from_to_2nd.hpp*</a></li>
<li><a href="headers/repeat_from_to_3rd.hpp.html">repeat_from_to_3rd.hpp*</a></li>
<li><a href="headers/repetition.hpp.html">repetition.hpp</a></li>
<li>repetition/</li>
<li class="ps"><a href="headers/repetition/deduce_r.hpp.html">deduce_r.hpp</a></li>
<li class="ps"><a href="headers/repetition/deduce_z.hpp.html">deduce_z.hpp</a></li>
<li class="ps"><a href="headers/repetition/enum.hpp.html">enum.hpp</a></li>
<li class="ps"><a href="headers/repetition/enum_binary_params.hpp.html">enum_binary_params.hpp</a></li>
<li class="ps"><a href="headers/repetition/enum_params.hpp.html">enum_params.hpp</a></li>
<li class="ps"><a href="headers/repetition/enum_params_with_a_default.hpp.html">enum_params_with_a_default.hpp</a></li>
<li class="ps"><a href="headers/repetition/enum_params_with_defaults.hpp.html">enum_params_with_defaults.hpp</a></li>
<li class="ps"><a href="headers/repetition/enum_shifted_params.hpp.html">enum_shifted_params.hpp</a></li>
<li class="ps"><a href="headers/repetition/enum_shifted.hpp.html">enum_shifted.hpp</a></li>
<li class="ps"><a href="headers/repetition/enum_trailing.hpp.html">enum_trailing.hpp</a></li>
<li class="ps"><a href="headers/repetition/enum_trailing_binary_params.hpp.html">enum_trailing_binary_params.hpp</a></li>
<li class="ps"><a href="headers/repetition/enum_trailing_params.hpp.html">enum_trailing_params.hpp</a></li>
<li class="ps"><a href="headers/repetition/for.hpp.html">for.hpp</a></li>
<li class="ps"><a href="headers/repetition/repeat.hpp.html">repeat.hpp</a></li>
<li class="ps"><a href="headers/repetition/repeat_from_to.hpp.html">repeat_from_to.hpp</a></li>
<li><a href="headers/selection.hpp.html">selection.hpp</a></li>
<li>selection/</li>
<li class="ps"><a href="headers/selection/max.hpp.html">max.hpp</a></li>
<li class="ps"><a href="headers/selection/min.hpp.html">min.hpp</a></li>
<li><a href="headers/seq.hpp.html">seq.hpp</a></li>
<li>seq/</li>
<li class="ps"><a href="headers/seq/cat.hpp.html">cat.hpp</a></li>
<li class="ps"><a href="headers/seq/elem.hpp.html">elem.hpp</a></li>
<li class="ps"><a href="headers/seq/enum.hpp.html">enum.hpp</a></li>
<li class="ps"><a href="headers/seq/filter.hpp.html">filter.hpp</a></li>
<li class="ps"><a href="headers/seq/first_n.hpp.html">first_n.hpp</a></li>
<li class="ps"><a href="headers/seq/fold_left.hpp.html">fold_left.hpp</a></li>
<li class="ps"><a href="headers/seq/fold_right.hpp.html">fold_right.hpp</a></li>
<li class="ps"><a href="headers/seq/for_each.hpp.html">for_each.hpp</a></li>
<li class="ps"><a href="headers/seq/for_each_i.hpp.html">for_each_i.hpp</a></li>
<li class="ps"><a href="headers/seq/for_each_product.hpp.html">for_each_product.hpp</a></li>
<li class="ps"><a href="headers/seq/insert.hpp.html">insert.hpp</a></li>
<li class="ps"><a href="headers/seq/pop_back.hpp.html">pop_back.hpp</a></li>
<li class="ps"><a href="headers/seq/pop_front.hpp.html">pop_front.hpp</a></li>
<li class="ps"><a href="headers/seq/push_back.hpp.html">push_back.hpp</a></li>
<li class="ps"><a href="headers/seq/push_front.hpp.html">push_front.hpp</a></li>
<li class="ps"><a href="headers/seq/remove.hpp.html">remove.hpp</a></li>
<li class="ps"><a href="headers/seq/replace.hpp.html">replace.hpp</a></li>
<li class="ps"><a href="headers/seq/rest_n.hpp.html">rest_n.hpp</a></li>
<li class="ps"><a href="headers/seq/reverse.hpp.html">reverse.hpp</a></li>
<li class="ps"><a href="headers/seq/seq.hpp.html">seq.hpp</a></li>
<li class="ps"><a href="headers/seq/size.hpp.html">size.hpp</a></li>
<li class="ps"><a href="headers/seq/subseq.hpp.html">subseq.hpp</a></li>
<li class="ps"><a href="headers/seq/to_array.hpp.html">to_array.hpp</a></li>
<li class="ps"><a href="headers/seq/to_tuple.hpp.html">to_tuple.hpp</a></li>
<li class="ps"><a href="headers/seq/transform.hpp.html">transform.hpp</a></li>
<li><a href="headers/slot.hpp.html">slot.hpp</a></li>
<li>slot/</li>
<li class="ps"><a href="headers/slot/slot.hpp.html">slot.hpp</a></li>
<li><a href="headers/tuple.hpp.html">tuple.hpp</a></li>
<li>tuple/</li>
<li class="ps"><a href="headers/tuple/elem.hpp.html">elem.hpp</a></li>
<li class="ps"><a href="headers/tuple/eat.hpp.html">eat.hpp</a></li>
<li class="ps"><a href="headers/tuple/rem.hpp.html">rem.hpp</a></li>
<li class="ps"><a href="headers/tuple/reverse.hpp.html">reverse.hpp</a></li>
<li class="ps"><a href="headers/tuple/to_list.hpp.html">to_list.hpp</a></li>
<li class="ps"><a href="headers/tuple/to_seq.hpp.html">to_seq.hpp</a></li>
<li><a href="headers/stringize.hpp.html">stringize.hpp</a></li>
<li><a href="headers/while.hpp.html">while.hpp*</a></li>
<li><a href="headers/wstringize.hpp.html">wstringize.hpp</a></li>
</ul>
</body>
<head>
<title>headers.html</title>
<link rel="stylesheet" type="text/css" href="styles.css">
<base target="desc">
<style>
.ps { margin-left: 30px; }
</style>
</head>
<body>
<h4>Headers <small><a href="contents.html" target="index">[back]</a></small></h4>
<ul>
<li>../</li>
<li class="ps"><a href="headers/preprocessor.hpp.html">preprocessor.hpp</a></li>
<li><a href="headers/arithmetic.hpp.html">arithmetic.hpp</a></li>
<li>arithmetic/</li>
<li class="ps"><a href="headers/arithmetic/add.hpp.html">add.hpp</a></li>
<li class="ps"><a href="headers/arithmetic/dec.hpp.html">dec.hpp</a></li>
<li class="ps"><a href="headers/arithmetic/div.hpp.html">div.hpp</a></li>
<li class="ps"><a href="headers/arithmetic/inc.hpp.html">inc.hpp</a></li>
<li class="ps"><a href="headers/arithmetic/mod.hpp.html">mod.hpp</a></li>
<li class="ps"><a href="headers/arithmetic/mul.hpp.html">mul.hpp</a></li>
<li class="ps"><a href="headers/arithmetic/sub.hpp.html">sub.hpp</a></li>
<li><a href="headers/array.hpp.html">array.hpp</a></li>
<li>array/</li>
<li class="ps"><a href="headers/array/data.hpp.html">data.hpp</a></li>
<li class="ps"><a href="headers/array/elem.hpp.html">elem.hpp</a></li>
<li class="ps"><a href="headers/array/size.hpp.html">size.hpp</a></li>
<li><a href="headers/assert_msg.hpp.html">assert_msg.hpp*</a></li>
<li><a href="headers/cat.hpp.html">cat.hpp</a></li>
<li><a href="headers/comma.hpp.html">comma.hpp*</a></li>
<li><a href="headers/comma_if.hpp.html">comma_if.hpp*</a></li>
<li><a href="headers/comparison.hpp.html">comparison.hpp</a></li>
<li>comparison/</li>
<li class="ps"><a href="headers/comparison/equal.hpp.html">equal.hpp</a></li>
<li class="ps"><a href="headers/comparison/greater.hpp.html">greater.hpp</a></li>
<li class="ps"><a href="headers/comparison/greater_equal.hpp.html">greater_equal.hpp</a></li>
<li class="ps"><a href="headers/comparison/less.hpp.html">less.hpp</a></li>
<li class="ps"><a href="headers/comparison/less_equal.hpp.html">less_equal.hpp</a></li>
<li class="ps"><a href="headers/comparison/not_equal.hpp.html">not_equal.hpp</a></li>
<li>config/</li>
<li class="ps"><a href="headers/config/limits.hpp.html">limits.hpp</a></li>
<li><a href="headers/control.hpp.html">control.hpp</a></li>
<li>control/</li>
<li class="ps"><a href="headers/control/deduce_d.hpp.html">deduce_d.hpp</a></li>
<li class="ps"><a href="headers/control/expr_if.hpp.html">expr_if.hpp</a></li>
<li class="ps"><a href="headers/control/expr_iif.hpp.html">expr_iif.hpp</a></li>
<li class="ps"><a href="headers/control/if.hpp.html">if.hpp</a></li>
<li class="ps"><a href="headers/control/iif.hpp.html">iif.hpp</a></li>
<li class="ps"><a href="headers/control/while.hpp.html">while.hpp</a></li>
<li><a href="headers/debug.hpp.html">debug.hpp</a></li>
<li>debug/</li>
<li class="ps"><a href="headers/debug/assert.hpp.html">assert.hpp</a></li>
<li class="ps"><a href="headers/debug/line.hpp.html">line.hpp</a></li>
<li><a href="headers/dec.hpp.html">dec.hpp*</a></li>
<li><a href="headers/empty.hpp.html">empty.hpp*</a></li>
<li><a href="headers/enum.hpp.html">enum.hpp*</a></li>
<li><a href="headers/enum_params.hpp.html">enum_params.hpp*</a></li>
<li><a href="headers/enum_params_with_a_default.hpp.html">enum_params_with_a_default.hpp*</a></li>
<li><a href="headers/enum_params_with_defaults.hpp.html">enum_params_with_defaults.hpp*</a></li>
<li><a href="headers/enum_shifted.hpp.html">enum_shifted.hpp*</a></li>
<li><a href="headers/enum_shifted_params.hpp.html">enum_shifted_params.hpp*</a></li>
<li><a href="headers/expand.hpp.html">expand.hpp*</a></li>
<li><a href="headers/expr_if.hpp.html">expr_if.hpp*</a></li>
<li><a href="headers/facilities.hpp.html">facilities.hpp</a></li>
<li>facilities/</li>
<li class="ps"><a href="headers/facilities/apply.hpp.html">apply.hpp</a></li>
<li class="ps"><a href="headers/facilities/empty.hpp.html">empty.hpp</a></li>
<li class="ps"><a href="headers/facilities/expand.hpp.html">expand.hpp</a></li>
<li class="ps"><a href="headers/facilities/identity.hpp.html">identity.hpp</a></li>
<li class="ps"><a href="headers/facilities/intercept.hpp.html">intercept.hpp</a></li>
<li><a href="headers/for.hpp.html">for.hpp*</a></li>
<li><a href="headers/identity.hpp.html">identity.hpp*</a></li>
<li><a href="headers/if.hpp.html">if.hpp*</a></li>
<li><a href="headers/inc.hpp.html">inc.hpp*</a></li>
<li><a href="headers/iterate.hpp.html">iterate.hpp*</a></li>
<li><a href="headers/iteration.hpp.html">iteration.hpp</a></li>
<li>iteration/</li>
<li class="ps"><a href="headers/iteration/iterate.hpp.html">iterate.hpp</a></li>
<li class="ps"><a href="headers/iteration/local.hpp.html">local.hpp</a></li>
<li class="ps"><a href="headers/iteration/self.hpp.html">self.hpp</a></li>
<li><a href="headers/library.hpp.html">library.hpp</a></li>
<li><a href="headers/limits.hpp.html">limits.hpp*</a></li>
<li><a href="headers/list.hpp.html">list.hpp</a></li>
<li>list/</li>
<li class="ps"><a href="headers/list/adt.hpp.html">adt.hpp</a></li>
<li class="ps"><a href="headers/list/append.hpp.html">append.hpp</a></li>
<li class="ps"><a href="headers/list/at.hpp.html">at.hpp</a></li>
<li class="ps"><a href="headers/list/cat.hpp.html">cat.hpp</a></li>
<li class="ps"><a href="headers/list/enum.hpp.html">enum.hpp</a></li>
<li class="ps"><a href="headers/list/filter.hpp.html">filter.hpp</a></li>
<li class="ps"><a href="headers/list/first_n.hpp.html">first_n.hpp</a></li>
<li class="ps"><a href="headers/list/fold_left.hpp.html">fold_left.hpp</a></li>
<li class="ps"><a href="headers/list/fold_right.hpp.html">fold_right.hpp</a></li>
<li class="ps"><a href="headers/list/for_each.hpp.html">for_each.hpp</a></li>
<li class="ps"><a href="headers/list/for_each_i.hpp.html">for_each_i.hpp</a></li>
<li class="ps"><a href="headers/list/for_each_product.hpp.html">for_each_product.hpp</a></li>
<li class="ps"><a href="headers/list/rest_n.hpp.html">rest_n.hpp</a></li>
<li class="ps"><a href="headers/list/reverse.hpp.html">reverse.hpp</a></li>
<li class="ps"><a href="headers/list/size.hpp.html">size.hpp</a></li>
<li class="ps"><a href="headers/list/to_tuple.hpp.html">to_tuple.hpp</a></li>
<li class="ps"><a href="headers/list/transform.hpp.html">transform.hpp</a></li>
<li><a href="headers/logical.hpp.html">logical.hpp</a></li>
<li>logical/</li>
<li class="ps"><a href="headers/logical/and.hpp.html">and.hpp</a></li>
<li class="ps"><a href="headers/logical/bitand.hpp.html">bitand.hpp</a></li>
<li class="ps"><a href="headers/logical/bitnor.hpp.html">bitnor.hpp</a></li>
<li class="ps"><a href="headers/logical/bitor.hpp.html">bitor.hpp</a></li>
<li class="ps"><a href="headers/logical/bitxor.hpp.html">bitxor.hpp</a></li>
<li class="ps"><a href="headers/logical/bool.hpp.html">bool.hpp</a></li>
<li class="ps"><a href="headers/logical/compl.hpp.html">compl.hpp</a></li>
<li class="ps"><a href="headers/logical/nor.hpp.html">nor.hpp</a></li>
<li class="ps"><a href="headers/logical/not.hpp.html">not.hpp</a></li>
<li class="ps"><a href="headers/logical/or.hpp.html">or.hpp</a></li>
<li class="ps"><a href="headers/logical/xor.hpp.html">xor.hpp</a></li>
<li><a href="headers/max.hpp.html">max.hpp*</a></li>
<li><a href="headers/min.hpp.html">min.hpp*</a></li>
<li><a href="headers/punctuation.hpp.html">punctuation.hpp</a></li>
<li>punctuation/</li>
<li class="ps"><a href="headers/punctuation/comma.hpp.html">comma.hpp</a></li>
<li class="ps"><a href="headers/punctuation/comma_if.hpp.html">comma_if.hpp</a></li>
<li class="ps"><a href="headers/punctuation/paren.hpp.html">paren.hpp</a></li>
<li class="ps"><a href="headers/punctuation/paren_if.hpp.html">paren_if.hpp</a></li>
<li><a href="headers/repeat.hpp.html">repeat.hpp*</a></li>
<li><a href="headers/repeat_2nd.hpp.html">repeat_2nd.hpp*</a></li>
<li><a href="headers/repeat_3rd.hpp.html">repeat_3rd.hpp*</a></li>
<li><a href="headers/repeat_from_to.hpp.html">repeat_from_to.hpp*</a></li>
<li><a href="headers/repeat_from_to_2nd.hpp.html">repeat_from_to_2nd.hpp*</a></li>
<li><a href="headers/repeat_from_to_3rd.hpp.html">repeat_from_to_3rd.hpp*</a></li>
<li><a href="headers/repetition.hpp.html">repetition.hpp</a></li>
<li>repetition/</li>
<li class="ps"><a href="headers/repetition/deduce_r.hpp.html">deduce_r.hpp</a></li>
<li class="ps"><a href="headers/repetition/deduce_z.hpp.html">deduce_z.hpp</a></li>
<li class="ps"><a href="headers/repetition/enum.hpp.html">enum.hpp</a></li>
<li class="ps"><a href="headers/repetition/enum_binary_params.hpp.html">enum_binary_params.hpp</a></li>
<li class="ps"><a href="headers/repetition/enum_params.hpp.html">enum_params.hpp</a></li>
<li class="ps"><a href="headers/repetition/enum_params_with_a_default.hpp.html">enum_params_with_a_default.hpp</a></li>
<li class="ps"><a href="headers/repetition/enum_params_with_defaults.hpp.html">enum_params_with_defaults.hpp</a></li>
<li class="ps"><a href="headers/repetition/enum_shifted_params.hpp.html">enum_shifted_params.hpp</a></li>
<li class="ps"><a href="headers/repetition/enum_shifted.hpp.html">enum_shifted.hpp</a></li>
<li class="ps"><a href="headers/repetition/enum_trailing.hpp.html">enum_trailing.hpp</a></li>
<li class="ps"><a href="headers/repetition/enum_trailing_binary_params.hpp.html">enum_trailing_binary_params.hpp</a></li>
<li class="ps"><a href="headers/repetition/enum_trailing_params.hpp.html">enum_trailing_params.hpp</a></li>
<li class="ps"><a href="headers/repetition/for.hpp.html">for.hpp</a></li>
<li class="ps"><a href="headers/repetition/repeat.hpp.html">repeat.hpp</a></li>
<li class="ps"><a href="headers/repetition/repeat_from_to.hpp.html">repeat_from_to.hpp</a></li>
<li><a href="headers/selection.hpp.html">selection.hpp</a></li>
<li>selection/</li>
<li class="ps"><a href="headers/selection/max.hpp.html">max.hpp</a></li>
<li class="ps"><a href="headers/selection/min.hpp.html">min.hpp</a></li>
<li><a href="headers/slot.hpp.html">slot.hpp</a></li>
<li>slot/</li>
<li class="ps"><a href="headers/slot/slot.hpp.html">slot.hpp</a></li>
<li><a href="headers/tuple.hpp.html">tuple.hpp</a></li>
<li>tuple/</li>
<li class="ps"><a href="headers/tuple/elem.hpp.html">elem.hpp</a></li>
<li class="ps"><a href="headers/tuple/eat.hpp.html">eat.hpp</a></li>
<li class="ps"><a href="headers/tuple/rem.hpp.html">rem.hpp</a></li>
<li class="ps"><a href="headers/tuple/reverse.hpp.html">reverse.hpp</a></li>
<li class="ps"><a href="headers/tuple/to_list.hpp.html">to_list.hpp</a></li>
<li><a href="headers/stringize.hpp.html">stringize.hpp</a></li>
<li><a href="headers/while.hpp.html">while.hpp*</a></li>
</ul>
</body>
</html>

View File

@ -15,14 +15,6 @@
<ul>
<li><a href="array/data.hpp.html">&lt;boost/preprocessor/array/data.hpp&gt;</a></li>
<li><a href="array/elem.hpp.html">&lt;boost/preprocessor/array/elem.hpp&gt;</a></li>
<li><a href="array/insert.hpp.html">&lt;boost/preprocessor/array/insert.hpp&gt;</a></li>
<li><a href="array/pop_back.hpp.html">&lt;boost/preprocessor/array/pop_back.hpp&gt;</a></li>
<li><a href="array/pop_front.hpp.html">&lt;boost/preprocessor/array/pop_front.hpp&gt;</a></li>
<li><a href="array/push_back.hpp.html">&lt;boost/preprocessor/array/push_back.hpp&gt;</a></li>
<li><a href="array/push_front.hpp.html">&lt;boost/preprocessor/array/push_front.hpp&gt;</a></li>
<li><a href="array/remove.hpp.html">&lt;boost/preprocessor/array/remove.hpp&gt;</a></li>
<li><a href="array/replace.hpp.html">&lt;boost/preprocessor/array/replace.hpp&gt;</a></li>
<li><a href="array/reverse.hpp.html">&lt;boost/preprocessor/array/reverse.hpp&gt;</a></li>
<li><a href="array/size.hpp.html">&lt;boost/preprocessor/array/size.hpp&gt;</a></li>
</ul>
</body>

View File

@ -1,20 +0,0 @@
<html>
<head>
<title>array/insert.hpp</title>
<link rel="stylesheet" type="text/css" href="../../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>array/insert.hpp</b> header defines macros to insert an element into an <i>array</i>.
</div>
<h4>Usage</h4>
<div class="code">
#include <b>&lt;boost/preprocessor/array/insert.hpp&gt;</b>
</div>
<h4>Contents</h4>
<ul>
<li><a href="../../ref/array_insert.html">BOOST_PP_ARRAY_INSERT</a></li>
<li><a href="../../ref/array_insert_d.html">BOOST_PP_ARRAY_INSERT_D</a></li>
</ul>
</body>
</html>

View File

@ -1,20 +0,0 @@
<html>
<head>
<title>array/pop_back.hpp</title>
<link rel="stylesheet" type="text/css" href="../../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>array/pop_back.hpp</b> header defines macros to pop an element from the end of an <i>array</i>.
</div>
<h4>Usage</h4>
<div class="code">
#include <b>&lt;boost/preprocessor/array/pop_back.hpp&gt;</b>
</div>
<h4>Contents</h4>
<ul>
<li><a href="../../ref/array_pop_back.html">BOOST_PP_ARRAY_POP_BACK</a></li>
<li><a href="../../ref/array_pop_back_z.html">BOOST_PP_ARRAY_POP_BACK_Z</a></li>
</ul>
</body>
</html>

View File

@ -1,20 +0,0 @@
<html>
<head>
<title>array/pop_front.hpp</title>
<link rel="stylesheet" type="text/css" href="../../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>array/pop_front.hpp</b> header defines macros to pop an element from the beginning of an <i>array</i>.
</div>
<h4>Usage</h4>
<div class="code">
#include <b>&lt;boost/preprocessor/array/pop_front.hpp&gt;</b>
</div>
<h4>Contents</h4>
<ul>
<li><a href="../../ref/array_pop_front.html">BOOST_PP_ARRAY_POP_FRONT</a></li>
<li><a href="../../ref/array_pop_front_z.html">BOOST_PP_ARRAY_POP_FRONT_Z</a></li>
</ul>
</body>
</html>

View File

@ -1,19 +0,0 @@
<html>
<head>
<title>array/push_back.hpp</title>
<link rel="stylesheet" type="text/css" href="../../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>array/push_back.hpp</b> header defines a macro to append an element to the end of an <i>array</i>.
</div>
<h4>Usage</h4>
<div class="code">
#include <b>&lt;boost/preprocessor/array/push_back.hpp&gt;</b>
</div>
<h4>Contents</h4>
<ul>
<li><a href="../../ref/array_push_back.html">BOOST_PP_ARRAY_PUSH_BACK</a></li>
</ul>
</body>
</html>

View File

@ -1,19 +0,0 @@
<html>
<head>
<title>array/push_front.hpp</title>
<link rel="stylesheet" type="text/css" href="../../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>array/push_front.hpp</b> header defines a macro to append an element to the beginning of an <i>array</i>.
</div>
<h4>Usage</h4>
<div class="code">
#include <b>&lt;boost/preprocessor/array/push_front.hpp&gt;</b>
</div>
<h4>Contents</h4>
<ul>
<li><a href="../../ref/array_push_front.html">BOOST_PP_ARRAY_PUSH_FRONT</a></li>
</ul>
</body>
</html>

View File

@ -1,20 +0,0 @@
<html>
<head>
<title>array/remove.hpp</title>
<link rel="stylesheet" type="text/css" href="../../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>array/remove.hpp</b> header defines macros to remove an element from an <i>array</i>.
</div>
<h4>Usage</h4>
<div class="code">
#include <b>&lt;boost/preprocessor/array/remove.hpp&gt;</b>
</div>
<h4>Contents</h4>
<ul>
<li><a href="../../ref/array_remove.html">BOOST_PP_ARRAY_REMOVE</a></li>
<li><a href="../../ref/array_remove_d.html">BOOST_PP_ARRAY_REMOVE_D</a></li>
</ul>
</body>
</html>

View File

@ -1,20 +0,0 @@
<html>
<head>
<title>array/replace.hpp</title>
<link rel="stylesheet" type="text/css" href="../../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>array/replace.hpp</b> header defines macros to replace an element in an <i>array</i>.
</div>
<h4>Usage</h4>
<div class="code">
#include <b>&lt;boost/preprocessor/array/replace.hpp&gt;</b>
</div>
<h4>Contents</h4>
<ul>
<li><a href="../../ref/array_replace.html">BOOST_PP_ARRAY_REPLACE</a></li>
<li><a href="../../ref/array_replace_d.html">BOOST_PP_ARRAY_REPLACE_D</a></li>
</ul>
</body>
</html>

View File

@ -1,19 +0,0 @@
<html>
<head>
<title>array/reverse.hpp</title>
<link rel="stylesheet" type="text/css" href="../../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>array/reverse.hpp</b> header defines macros to reverse the elements in an <i>array</i>.
</div>
<h4>Usage</h4>
<div class="code">
#include <b>&lt;boost/preprocessor/array/reverse.hpp&gt;</b>
</div>
<h4>Contents</h4>
<ul>
<li><a href="../../ref/array_reverse.html">BOOST_PP_ARRAY_REVERSE</a></li>
</ul>
</body>
</html>

View File

@ -1,21 +1,17 @@
<html>
<head>
<title>config/limits.hpp</title>
<link rel="stylesheet" type="text/css" href="../../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>config/limits.hpp</b> header defines various library limits.
</div>
<h4>
Usage
</h4>
<head>
<title>config/limits.hpp</title>
<link rel="stylesheet" type="text/css" href="../../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>config/limits.hpp</b> header defines various library limits.
</div>
<h4>Usage</h4>
<div class="code">
#include <b>&lt;boost/preprocessor/config/limits.hpp&gt;</b>
</div>
<h4>
Contents
</h4>
<h4>Contents</h4>
<ul>
<li><a href="../../ref/limit_dim.html">BOOST_PP_LIMIT_DIM</a></li>
<li><a href="../../ref/limit_for.html">BOOST_PP_LIMIT_FOR</a></li>
@ -23,11 +19,10 @@
<li><a href="../../ref/limit_iteration_dim.html">BOOST_PP_LIMIT_ITERATION_DIM</a></li>
<li><a href="../../ref/limit_mag.html">BOOST_PP_LIMIT_MAG</a></li>
<li><a href="../../ref/limit_repeat.html">BOOST_PP_LIMIT_REPEAT</a></li>
<li><a href="../../ref/limit_seq.html">BOOST_PP_LIMIT_SEQ</a></li>
<li><a href="../../ref/limit_slot_count.html">BOOST_PP_LIMIT_SLOT_COUNT</a></li>
<li><a href="../../ref/limit_slot_sig.html">BOOST_PP_LIMIT_SLOT_SIG</a></li>
<li><a href="../../ref/limit_tuple.html">BOOST_PP_LIMIT_TUPLE</a></li>
<li><a href="../../ref/limit_while.html">BOOST_PP_LIMIT_WHILE</a></li>
</ul>
</body>
</body>
</html>

View File

@ -13,8 +13,8 @@
</div>
<h4>Contents</h4>
<ul>
<li><a href="../../ref/list_to_tuple.html">BOOST_PP_LIST_TO_TUPLE</a></li>
<li><a href="../../ref/list_to_tuple_r.html">BOOST_PP_LIST_TO_TUPLE_R</a></li>
<li><a href="../../ref/to_tuple.html">BOOST_PP_LIST_TO_TUPLE</a></li>
<li><a href="../../ref/to_tuple_r.html">BOOST_PP_LIST_TO_TUPLE_R</a></li>
</ul>
</body>
</html>

View File

@ -1,72 +0,0 @@
<html>
<head>
<title>seq.hpp</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>seq.hpp</b> includes the headers in the <i>seq</i> folder.
</div>
<h4>
Usage
</h4>
<div class="code">
#include <b>&lt;boost/preprocessor/seq.hpp&gt;</b>
</div>
<h4>
Includes
</h4>
<ul>
<li>
<a href="seq/cat.hpp.html">&lt;boost/preprocessor/seq/cat.hpp&gt;</a></li>
<li>
<a href="seq/elem.hpp.html">&lt;boost/preprocessor/seq/elem.hpp&gt;</a></li>
<li>
<a href="seq/enum.hpp.html">&lt;boost/preprocessor/seq/enum.hpp&gt;</a></li>
<li>
<a href="seq/filter.hpp.html">&lt;boost/preprocessor/seq/filter.hpp&gt;</a></li>
<li>
<a href="seq/first_n.hpp.html">&lt;boost/preprocessor/seq/first_n.hpp&gt;</a></li>
<li>
<a href="seq/fold_left.hpp.html">&lt;boost/preprocessor/seq/fold_left.hpp&gt;</a></li>
<li>
<a href="seq/fold_right.hpp.html">&lt;boost/preprocessor/seq/fold_right.hpp&gt;</a></li>
<li>
<a href="seq/for_each.hpp.html">&lt;boost/preprocessor/seq/for_each.hpp&gt;</a></li>
<li>
<a href="seq/for_each_i.hpp.html">&lt;boost/preprocessor/seq/for_each_i.hpp&gt;</a></li>
<li>
<a href="seq/for_each_product.hpp.html">&lt;boost/preprocessor/seq/for_each_product.hpp&gt;</a></li>
<li>
<a href="seq/insert.hpp.html">&lt;boost/preprocessor/seq/insert.hpp&gt;</a></li>
<li>
<a href="seq/pop_back.hpp.html">&lt;boost/preprocessor/seq/pop_back.hpp&gt;</a></li>
<li>
<a href="seq/pop_front.hpp.html">&lt;boost/preprocessor/seq/pop_front.hpp&gt;</a></li>
<li>
<a href="seq/push_back.hpp.html">&lt;boost/preprocessor/seq/push_back.hpp&gt;</a></li>
<li>
<a href="seq/push_front.hpp.html">&lt;boost/preprocessor/seq/push_front.hpp&gt;</a></li>
<li>
<a href="seq/remove.hpp.html">&lt;boost/preprocessor/seq/remove.hpp&gt;</a></li>
<li>
<a href="seq/replace.hpp.html">&lt;boost/preprocessor/seq/replace.hpp&gt;</a></li>
<li>
<a href="seq/rest_n.hpp.html">&lt;boost/preprocessor/seq/rest_n.hpp&gt;</a></li>
<li>
<a href="seq/reverse.hpp.html">&lt;boost/preprocessor/seq/reverse.hpp&gt;</a></li>
<li>
<a href="seq/seq.hpp.html">&lt;boost/preprocessor/seq/seq.hpp&gt;</a></li>
<li>
<a href="seq/size.hpp.html">&lt;boost/preprocessor/seq/size.hpp&gt;</a></li>
<li>
<a href="seq/subseq.hpp.html">&lt;boost/preprocessor/seq/subseq.hpp&gt;</a></li>
<li>
<a href="seq/to_array.hpp.html">&lt;boost/preprocessor/seq/to_array.hpp&gt;</a></li>
<li>
<a href="seq/to_tuple.hpp.html">&lt;boost/preprocessor/seq/to_tuple.hpp&gt;</a></li>
<li>
<a href="seq/transform.hpp.html">&lt;boost/preprocessor/seq/transform.hpp&gt;</a></li>
</ul>
</body>
</html>

View File

@ -1,27 +0,0 @@
<html>
<head>
<title>seq/cat.hpp</title>
<link rel="stylesheet" type="text/css" href="../../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>seq/cat.hpp</b> header defines macros for concatenating all elements in
a <i>seq</i>.
</div>
<h4>
Usage
</h4>
<div class="code">
#include <b>&lt;boost/preprocessor/seq/cat.hpp&gt;</b>
</div>
<h4>
Contents
</h4>
<ul>
<li>
<a href="../../ref/seq_cat.html">BOOST_PP_SEQ_CAT</a></li>
<li>
<a href="../../ref/seq_cat_s.html">BOOST_PP_SEQ_CAT_S</a></li>
</ul>
</body>
</html>

View File

@ -1,24 +0,0 @@
<html>
<head>
<title>seq/elem.hpp</title>
<link rel="stylesheet" type="text/css" href="../../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>seq/elem.hpp</b> header defines a macro to extract an element from a <i>seq</i>.
</div>
<h4>
Usage
</h4>
<div class="code">
#include <b>&lt;boost/preprocessor/seq/elem.hpp&gt;</b>
</div>
<h4>
Contents
</h4>
<ul>
<li>
<a href="../../ref/seq_elem.html">BOOST_PP_SEQ_ELEM</a></li>
</ul>
</body>
</html>

View File

@ -1,24 +0,0 @@
<html>
<head>
<title>seq/enum.hpp</title>
<link rel="stylesheet" type="text/css" href="../../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>seq/enum.hpp</b> header defines a macro to enumerate the elements in a <i>seq</i>.
</div>
<h4>
Usage
</h4>
<div class="code">
#include <b>&lt;boost/preprocessor/seq/enum.hpp&gt;</b>
</div>
<h4>
Contents
</h4>
<ul>
<li>
<a href="../../ref/seq_enum.html">BOOST_PP_SEQ_ENUM</a></li>
</ul>
</body>
</html>

View File

@ -1,26 +0,0 @@
<html>
<head>
<title>seq/filter.hpp</title>
<link rel="stylesheet" type="text/css" href="../../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>seq/filter.hpp</b> header defines macros to filter a <i>seq</i>.
</div>
<h4>
Usage
</h4>
<div class="code">
#include <b>&lt;boost/preprocessor/seq/filter.hpp&gt;</b>
</div>
<h4>
Contents
</h4>
<ul>
<li>
<a href="../../ref/seq_filter.html">BOOST_PP_SEQ_FILTER</a></li>
<li>
<a href="../../ref/seq_filter_s.html">BOOST_PP_SEQ_FILTER_S</a></li>
</ul>
</body>
</html>

View File

@ -1,25 +0,0 @@
<html>
<head>
<title>seq/first_n.hpp</title>
<link rel="stylesheet" type="text/css" href="../../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>seq/first_n.hpp</b> header defines a macro that returns the first <i>N</i>
elements of a <i>seq</i>.
</div>
<h4>
Usage
</h4>
<div class="code">
#include <b>&lt;boost/preprocessor/seq/first_n.hpp&gt;</b>
</div>
<h4>
Contents
</h4>
<ul>
<li>
<a href="../../ref/seq_first_n.html">BOOST_PP_SEQ_FIRST_N</a></li>
</ul>
</body>
</html>

View File

@ -1,27 +0,0 @@
<html>
<head>
<title>seq/fold_left.hpp</title>
<link rel="stylesheet" type="text/css" href="../../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>seq/fold_left.hpp</b> header defines macros for folding (or
accumulating) a <i>seq</i> left-to-right.
</div>
<h4>
Usage
</h4>
<div class="code">
#include <b>&lt;boost/preprocessor/seq/fold_left.hpp&gt;</b>
</div>
<h4>
Contents
</h4>
<ul>
<li>
<a href="../../ref/seq_fold_left.html">BOOST_PP_SEQ_FOLD_LEFT</a></li>
<li>
<a href="../../ref/seq_fold_left_s.html">BOOST_PP_SEQ_FOLD_LEFT_<i>s</i></a></li>
</ul>
</body>
</html>

View File

@ -1,27 +0,0 @@
<html>
<head>
<title>seq/fold_right.hpp</title>
<link rel="stylesheet" type="text/css" href="../../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>seq/fold_right.hpp</b> header defines macros for folding (or
accumulating) a <i>seq</i> right-to-left.
</div>
<h4>
Usage
</h4>
<div class="code">
#include <b>&lt;boost/preprocessor/seq/fold_right.hpp&gt;</b>
</div>
<h4>
Contents
</h4>
<ul>
<li>
<a href="../../ref/seq_fold_right.html">BOOST_PP_SEQ_FOLD_RIGHT</a></li>
<li>
<a href="../../ref/seq_fold_right_s.html">BOOST_PP_SEQ_FOLD_RIGHT_<i>s</i></a></li>
</ul>
</body>
</html>

View File

@ -1,27 +0,0 @@
<html>
<head>
<title>seq/for_each.hpp</title>
<link rel="stylesheet" type="text/css" href="../../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>seq/for_each.hpp</b> header defines macros to repeat a macro for each
element in a <i>seq</i>.
</div>
<h4>
Usage
</h4>
<div class="code">
#include <b>&lt;boost/preprocessor/seq/for_each.hpp&gt;</b>
</div>
<h4>
Contents
</h4>
<ul>
<li>
<a href="../../ref/seq_for_each.html">BOOST_PP_SEQ_FOR_EACH</a></li>
<li>
<a href="../../ref/seq_for_each_r.html">BOOST_PP_SEQ_FOR_EACH_R</a></li>
</ul>
</body>
</html>

View File

@ -1,27 +0,0 @@
<html>
<head>
<title>seq/for_each_i.hpp</title>
<link rel="stylesheet" type="text/css" href="../../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>seq/for_each_i.hpp</b> header defines macros to repeat a macro for each
element in a <i>seq</i>.
</div>
<h4>
Usage
</h4>
<div class="code">
#include <b>&lt;boost/preprocessor/seq/for_each_i.hpp&gt;</b>
</div>
<h4>
Contents
</h4>
<ul>
<li>
<a href="../../ref/seq_for_each_i.html">BOOST_PP_SEQ_FOR_EACH_I</a></li>
<li>
<a href="../../ref/seq_for_each_i_r.html">BOOST_PP_SEQ_FOR_EACH_I_R</a></li>
</ul>
</body>
</html>

View File

@ -1,27 +0,0 @@
<html>
<head>
<title>seq/for_each_product.hpp</title>
<link rel="stylesheet" type="text/css" href="../../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>seq/for_each_product.hpp</b> header defines macros to repeat a macro for
each cartesian product of several <i>seqs</i>.
</div>
<h4>
Usage
</h4>
<div class="code">
#include <b>&lt;boost/preprocessor/seq/for_each_product.hpp&gt;</b>
</div>
<h4>
Contents
</h4>
<ul>
<li>
<a href="../../ref/seq_for_each_product.html">BOOST_PP_SEQ_FOR_EACH_PRODUCT</a></li>
<li>
<a href="../../ref/seq_for_each_product_r.html">BOOST_PP_SEQ_FOR_EACH_PRODUCT_R</a></li>
</ul>
</body>
</html>

View File

@ -1,24 +0,0 @@
<html>
<head>
<title>seq/insert.hpp</title>
<link rel="stylesheet" type="text/css" href="../../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>seq/insert.hpp</b> header defines a macro to insert an element into a <i>seq</i>.
</div>
<h4>
Usage
</h4>
<div class="code">
#include <b>&lt;boost/preprocessor/seq/insert.hpp&gt;</b>
</div>
<h4>
Contents
</h4>
<ul>
<li>
<a href="../../ref/seq_insert.html">BOOST_PP_SEQ_INSERT</a></li>
</ul>
</body>
</html>

View File

@ -1,25 +0,0 @@
<html>
<head>
<title>seq/pop_back.hpp</title>
<link rel="stylesheet" type="text/css" href="../../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>seq/pop_back.hpp</b> header defines a macro to pop the last element off
a <i>seq</i>.
</div>
<h4>
Usage
</h4>
<div class="code">
#include <b>&lt;boost/preprocessor/seq/pop_back.hpp&gt;</b>
</div>
<h4>
Contents
</h4>
<ul>
<li>
<a href="../../ref/seq_pop_back.html">BOOST_PP_SEQ_POP_BACK</a></li>
</ul>
</body>
</html>

View File

@ -1,25 +0,0 @@
<html>
<head>
<title>seq/pop_front.hpp</title>
<link rel="stylesheet" type="text/css" href="../../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>seq/pop_front.hpp</b> header defines a macro to pop the first element
off a <i>seq</i>.
</div>
<h4>
Usage
</h4>
<div class="code">
#include <b>&lt;boost/preprocessor/seq/pop_front.hpp&gt;</b>
</div>
<h4>
Contents
</h4>
<ul>
<li>
<a href="../../ref/seq_pop_front.html">BOOST_PP_SEQ_POP_FRONT</a></li>
</ul>
</body>
</html>

View File

@ -1,24 +0,0 @@
<html>
<head>
<title>seq/push_back.hpp</title>
<link rel="stylesheet" type="text/css" href="../../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>seq/push_back.hpp</b> header defines a macro to append an element to a <i>seq</i>.
</div>
<h4>
Usage
</h4>
<div class="code">
#include <b>&lt;boost/preprocessor/seq/push_back.hpp&gt;</b>
</div>
<h4>
Contents
</h4>
<ul>
<li>
<a href="../../ref/seq_push_back.html">BOOST_PP_SEQ_PUSH_BACK</a></li>
</ul>
</body>
</html>

View File

@ -1,24 +0,0 @@
<html>
<head>
<title>seq/push_front.hpp</title>
<link rel="stylesheet" type="text/css" href="../../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>seq/push_front.hpp</b> header defines a macro to prepend an element to a <i>seq</i>.
</div>
<h4>
Usage
</h4>
<div class="code">
#include <b>&lt;boost/preprocessor/seq/push_front.hpp&gt;</b>
</div>
<h4>
Contents
</h4>
<ul>
<li>
<a href="../../ref/seq_push_front.html">BOOST_PP_SEQ_PUSH_FRONT</a></li>
</ul>
</body>
</html>

View File

@ -1,24 +0,0 @@
<html>
<head>
<title>seq/remove.hpp</title>
<link rel="stylesheet" type="text/css" href="../../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>seq/remove.hpp</b> header defines a macro to remove an element from a <i>seq</i>.
</div>
<h4>
Usage
</h4>
<div class="code">
#include <b>&lt;boost/preprocessor/seq/remove.hpp&gt;</b>
</div>
<h4>
Contents
</h4>
<ul>
<li>
<a href="../../ref/seq_remove.html">BOOST_PP_SEQ_REMOVE</a></li>
</ul>
</body>
</html>

View File

@ -1,24 +0,0 @@
<html>
<head>
<title>seq/replace.hpp</title>
<link rel="stylesheet" type="text/css" href="../../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>seq/replace.hpp</b> header defines a macro to replace an element in a <i>seq</i>.
</div>
<h4>
Usage
</h4>
<div class="code">
#include <b>&lt;boost/preprocessor/seq/replace.hpp&gt;</b>
</div>
<h4>
Contents
</h4>
<ul>
<li>
<a href="../../ref/seq_replace.html">BOOST_PP_SEQ_REPLACE</a></li>
</ul>
</body>
</html>

View File

@ -1,25 +0,0 @@
<html>
<head>
<title>seq/rest_n.hpp</title>
<link rel="stylesheet" type="text/css" href="../../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>seq/rest_n.hpp</b> header defines a macro for extracting a group of
elements from the end of a <i>seq</i>.
</div>
<h4>
Usage
</h4>
<div class="code">
#include <b>&lt;boost/preprocessor/seq/rest_n.hpp&gt;</b>
</div>
<h4>
Contents
</h4>
<ul>
<li>
<a href="../../ref/seq_rest_n.html">BOOST_PP_SEQ_REST_N</a></li>
</ul>
</body>
</html>

View File

@ -1,26 +0,0 @@
<html>
<head>
<title>seq/reverse.hpp</title>
<link rel="stylesheet" type="text/css" href="../../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>seq/reverse.hpp</b> header defines macros to reverse a <i>seq</i>.
</div>
<h4>
Usage
</h4>
<div class="code">
#include <b>&lt;boost/preprocessor/seq/reverse.hpp&gt;</b>
</div>
<h4>
Contents
</h4>
<ul>
<li>
<a href="../../ref/seq_reverse.html">BOOST_PP_SEQ_REVERSE</a></li>
<li>
<a href="../../ref/seq_reverse_s.html">BOOST_PP_SEQ_REVERSE_S</a></li>
</ul>
</body>
</html>

View File

@ -1,28 +0,0 @@
<html>
<head>
<title>seq/seq.hpp</title>
<link rel="stylesheet" type="text/css" href="../../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>seq/seq.hpp</b> header defines basic primitives for manipulating <i>seqs</i>.
</div>
<h4>
Usage
</h4>
<div class="code">
#include <b>&lt;boost/preprocessor/seq/seq.hpp&gt;</b>
</div>
<h4>
Contents
</h4>
<ul>
<li>
<a href="../../ref/seq_head.html">BOOST_PP_SEQ_HEAD</a></li>
<li>
<a href="../../ref/seq_nil.html">BOOST_PP_SEQ_NIL</a></li>
<li>
<a href="../../ref/seq_tail.html">BOOST_PP_SEQ_TAIL</a></li>
</ul>
</body>
</html>

View File

@ -1,24 +0,0 @@
<html>
<head>
<title>seq/size.hpp</title>
<link rel="stylesheet" type="text/css" href="../../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>seq/size.hpp</b> header defines a macro to calculate the size of a <i>seq</i>.
</div>
<h4>
Usage
</h4>
<div class="code">
#include <b>&lt;boost/preprocessor/seq/size.hpp&gt;</b>
</div>
<h4>
Contents
</h4>
<ul>
<li>
<a href="../../ref/seq_size.html">BOOST_PP_SEQ_SIZE</a></li>
</ul>
</body>
</html>

View File

@ -1,24 +0,0 @@
<html>
<head>
<title>seq/subseq.hpp</title>
<link rel="stylesheet" type="text/css" href="../../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>seq/subseq.hpp</b> header defines a macro that extracts a subseq from a <i>seq</i>.
</div>
<h4>
Usage
</h4>
<div class="code">
#include <b>&lt;boost/preprocessor/seq/subseq.hpp&gt;</b>
</div>
<h4>
Contents
</h4>
<ul>
<li>
<a href="../../ref/seq_subseq.html">BOOST_PP_SEQ_SUBSEQ</a></li>
</ul>
</body>
</html>

View File

@ -1,25 +0,0 @@
<html>
<head>
<title>seq/to_array.hpp</title>
<link rel="stylesheet" type="text/css" href="../../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>seq/to_array.hpp</b> header defines a macro that converts a <i>seq</i> to
an <i>array</i>.
</div>
<h4>
Usage
</h4>
<div class="code">
#include <b>&lt;boost/preprocessor/seq/to_array.hpp&gt;</b>
</div>
<h4>
Contents
</h4>
<ul>
<li>
<a href="../../ref/seq_to_array.html">BOOST_PP_SEQ_TO_ARRAY</a></li>
</ul>
</body>
</html>

View File

@ -1,25 +0,0 @@
<html>
<head>
<title>seq/to_tuple.hpp</title>
<link rel="stylesheet" type="text/css" href="../../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>seq/to_tuple.hpp</b> header defines a macro that converts a <i>seq</i> to
an <i>tuple</i>.
</div>
<h4>
Usage
</h4>
<div class="code">
#include <b>&lt;boost/preprocessor/seq/to_tuple.hpp&gt;</b>
</div>
<h4>
Contents
</h4>
<ul>
<li>
<a href="../../ref/seq_to_tuple.html">BOOST_PP_SEQ_TO_TUPLE</a></li>
</ul>
</body>
</html>

View File

@ -1,26 +0,0 @@
<html>
<head>
<title>seq/transform.hpp</title>
<link rel="stylesheet" type="text/css" href="../../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>seq/transform.hpp</b> header defines macros to transform a <i>seq</i>.
</div>
<h4>
Usage
</h4>
<div class="code">
#include <b>&lt;boost/preprocessor/seq/transform.hpp&gt;</b>
</div>
<h4>
Contents
</h4>
<ul>
<li>
<a href="../../ref/seq_transform.html">BOOST_PP_SEQ_TRANSFORM</a></li>
<li>
<a href="../../ref/seq_transform_s.html">BOOST_PP_SEQ_TRANSFORM_S</a></li>
</ul>
</body>
</html>

View File

@ -14,7 +14,6 @@
<h4>Contents</h4>
<ul>
<li><a href="../../ref/tuple_rem.html">BOOST_PP_TUPLE_REM</a></li>
<li><a href="../../ref/tuple_rem_ctor.html">BOOST_PP_TUPLE_REM_CTOR</a></li>
</ul>
</body>
</html>

View File

@ -1,25 +0,0 @@
<html>
<head>
<title>tuple/to_seq.hpp</title>
<link rel="stylesheet" type="text/css" href="../../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>tuple/to_seq.hpp</b> header defines a macro that converts a <i>tuple</i>
to a <i>seq</i>.
</div>
<h4>
Usage
</h4>
<div class="code">
#include <b>&lt;boost/preprocessor/tuple/to_seq.hpp&gt;</b>
</div>
<h4>
Contents
</h4>
<ul>
<li>
<a href="../../ref/tuple_to_seq.html">BOOST_PP_TUPLE_TO_SEQ</a></li>
</ul>
</body>
</html>

View File

@ -1,19 +0,0 @@
<html>
<head>
<title>wstringize.hpp</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>wstringize.hpp</b> header defines a wide stringizing macro.
</div>
<h4>Usage</h4>
<div class="code">
#include <b>&lt;boost/preprocessor/wstringize.hpp&gt;</b>
</div>
<h4>Contents</h4>
<ul>
<li><a href="../ref/wstringize.html">BOOST_PP_WSTRINGIZE</a></li>
</ul>
</body>
</html>

View File

@ -1,14 +1,13 @@
<html>
<head>
<title>Boost.Preprocessor</title>
</head>
<frameset rows="65,*" frameborder="0">
<frame name="top" src="top.html" scrolling="no" noresize>
<frameset cols="350,*" frameborder="0" border="3">
<frame name="index" src="contents.html" scrolling="auto">
<frame name="desc" src="blank.html" scrolling="auto">
</frameset>
<noframes>
..</noframes>
<head>
<title>Boost.Preprocessor</title>
</head>
<frameset rows="65,*" frameborder="0">
<frame name="top" src="top.html" scrolling="no" noresize>
<frameset cols="350,*" frameborder="0" border="3">
<frame name="index" src="contents.html" scrolling="auto">
<frame name="desc" src="blank.html" scrolling="auto">
</frameset>
<noframes>..</noframes>
</frameset>
</html>

View File

@ -1,272 +1,217 @@
<html>
<head>
<title>ref.html</title>
<link rel="stylesheet" type="text/css" href="styles.css">
<base target="desc">
</head>
<body>
<h4>
Reference <small><a href="contents.html" target="index">[back]</a></small>
</h4>
<ul>
<!-- A -->
<li><a href="ref/add.html">ADD</a></li>
<li><a href="ref/add_d.html">ADD_D</a></li>
<li><a href="ref/and.html">AND</a></li>
<li><a href="ref/apply.html">APPLY</a></li>
<li><a href="ref/array_data.html">ARRAY_DATA</a></li>
<li><a href="ref/array_elem.html">ARRAY_ELEM</a></li>
<li><a href="ref/array_insert.html">ARRAY_INSERT</a></li>
<li><a href="ref/array_insert_d.html">ARRAY_INSERT_D</a></li>
<li><a href="ref/array_pop_back.html">ARRAY_POP_BACK</a></li>
<li><a href="ref/array_pop_back_z.html">ARRAY_POP_BACK_Z</a></li>
<li><a href="ref/array_pop_front.html">ARRAY_POP_FRONT</a></li>
<li><a href="ref/array_pop_front_z.html">ARRAY_POP_FRONT_Z</a></li>
<li><a href="ref/array_push_back.html">ARRAY_PUSH_BACK</a></li>
<li><a href="ref/array_push_front.html">ARRAY_PUSH_FRONT</a></li>
<li><a href="ref/array_remove.html">ARRAY_REMOVE</a></li>
<li><a href="ref/array_remove_d.html">ARRAY_REMOVE_D</a></li>
<li><a href="ref/array_replace.html">ARRAY_REPLACE</a></li>
<li><a href="ref/array_replace_d.html">ARRAY_REPLACE_D</a></li>
<li><a href="ref/array_reverse.html">ARRAY_REVERSE</a></li>
<li><a href="ref/array_size.html">ARRAY_SIZE</a></li>
<li><a href="ref/assert.html">ASSERT</a></li>
<li><a href="ref/assert_msg.html">ASSERT_MSG</a></li>
<li><a href="ref/assign_slot.html">ASSIGN_SLOT</a></li>
<!-- B -->
<li><a href="ref/bitand.html">BITAND</a></li>
<li><a href="ref/bitnor.html">BITNOR</a></li>
<li><a href="ref/bitor.html">BITOR</a></li>
<li><a href="ref/bitxor.html">BITXOR</a></li>
<li><a href="ref/bool.html">BOOL</a></li>
<!-- C -->
<li><a href="ref/cat.html">CAT</a></li>
<li><a href="ref/comma.html">COMMA</a></li>
<li><a href="ref/comma_if.html">COMMA_IF</a></li>
<li><a href="ref/compl.html">COMPL</a></li>
<li><a href="ref/config_extended_line_info.html">CONFIG_EXTENDED_LINE_INFO</a></li>
<!-- D -->
<li><a href="ref/dec.html">DEC</a></li>
<li><a href="ref/deduce_d.html">DEDUCE_D</a></li>
<li><a href="ref/deduce_r.html">DEDUCE_R</a></li>
<li><a href="ref/deduce_z.html">DEDUCE_Z</a></li>
<li><a href="ref/div.html">DIV</a></li>
<li><a href="ref/div_d.html">DIV_D</a></li>
<!-- E -->
<li><a href="ref/empty.html">EMPTY</a></li>
<li><a href="ref/enum.html">ENUM</a></li>
<li><a href="ref/enum_binary_params.html">ENUM_BINARY_PARAMS</a></li>
<li><a href="ref/enum_binary_params_z.html">ENUM_BINARY_PARAMS_Z</a></li>
<li><a href="ref/enum_params.html">ENUM_PARAMS</a></li>
<li><a href="ref/enum_params_with_a_default.html">ENUM_PARAMS_WITH_A_DEFAULT*</a></li>
<li><a href="ref/enum_params_with_defaults.html">ENUM_PARAMS_WITH_DEFAULTS*</a></li>
<li><a href="ref/enum_params_z.html">ENUM_PARAMS_Z</a></li>
<li><a href="ref/enum_shifted.html">ENUM_SHIFTED</a></li>
<li><a href="ref/enum_shifted_params.html">ENUM_SHIFTED_PARAMS</a></li>
<li><a href="ref/enum_shifted_params_z.html">ENUM_SHIFTED_PARAMS_Z</a></li>
<li><a href="ref/enum_shifted_z.html">ENUM_SHIFTED_<i>z</i></a></li>
<li><a href="ref/enum_trailing.html">ENUM_TRAILING</a></li>
<li><a href="ref/enum_trailing_binary_params.html">ENUM_TRAILING_BINARY_PARAMS</a></li>
<li><a href="ref/enum_trailing_binary_params_z.html">ENUM_TRAILING_BINARY_PARAMS_Z</a></li>
<li><a href="ref/enum_trailing_params.html">ENUM_TRAILING_PARAMS</a></li>
<li><a href="ref/enum_trailing_params_z.html">ENUM_TRAILING_PARAMS_Z</a></li>
<li><a href="ref/enum_trailing_z.html">ENUM_TRAILING_<i>z</i></a></li>
<li><a href="ref/enum_z.html">ENUM_<i>z</i></a></li>
<li><a href="ref/equal.html">EQUAL</a></li>
<li><a href="ref/equal_d.html">EQUAL_D*</a></li>
<li><a href="ref/expand.html">EXPAND</a></li>
<li><a href="ref/expr_if.html">EXPR_IF</a></li>
<li><a href="ref/expr_iif.html">EXPR_IIF</a></li>
<!-- F -->
<li><a href="ref/filename_x.html">FILENAME_<i>x</i></a></li>
<li><a href="ref/for.html">FOR</a></li>
<li><a href="ref/for_r.html">FOR_<i>r</i></a></li>
<li><a href="ref/frame_finish.html">FRAME_FINISH</a></li>
<li><a href="ref/frame_flags.html">FRAME_FLAGS</a></li>
<li><a href="ref/frame_iteration.html">FRAME_ITERATION</a></li>
<li><a href="ref/frame_start.html">FRAME_START</a></li>
<!-- G -->
<li><a href="ref/greater.html">GREATER</a></li>
<li><a href="ref/greater_d.html">GREATER_D</a></li>
<li><a href="ref/greater_equal.html">GREATER_EQUAL</a></li>
<li><a href="ref/greater_equal_d.html">GREATER_EQUAL_D</a></li>
<!-- I -->
<li><a href="ref/identity.html">IDENTITY</a></li>
<li><a href="ref/if.html">IF</a></li>
<li><a href="ref/iif.html">IIF</a></li>
<li><a href="ref/inc.html">INC</a></li>
<li><a href="ref/include_self.html">INCLUDE_SELF</a></li>
<li><a href="ref/indirect_self.html">INDIRECT_SELF</a></li>
<li><a href="ref/intercept.html">INTERCEPT</a></li>
<li><a href="ref/is_iterating.html">IS_ITERATING</a></li>
<li><a href="ref/is_selfish.html">IS_SELFISH</a></li>
<li><a href="ref/iterate.html">ITERATE</a></li>
<li><a href="ref/iteration.html">ITERATION</a></li>
<li><a href="ref/iteration_depth.html">ITERATION_DEPTH</a></li>
<li><a href="ref/iteration_finish.html">ITERATION_FINISH</a></li>
<li><a href="ref/iteration_flags.html">ITERATION_FLAGS</a></li>
<li><a href="ref/iteration_limits.html">ITERATION_LIMITS</a></li>
<li><a href="ref/iteration_params_x.html">ITERATION_PARAMS_<i>x</i></a></li>
<li><a href="ref/iteration_start.html">ITERATION_START</a></li>
<!-- L -->
<li><a href="ref/less.html">LESS</a></li>
<li><a href="ref/less_d.html">LESS_D</a></li>
<li><a href="ref/less_equal.html">LESS_EQUAL</a></li>
<li><a href="ref/less_equal_d.html">LESS_EQUAL_D</a></li>
<li><a href="ref/limit_dim.html">LIMIT_DIM</a></li>
<li><a href="ref/limit_for.html">LIMIT_FOR</a></li>
<li><a href="ref/limit_iteration.html">LIMIT_ITERATION</a></li>
<li><a href="ref/limit_iteration_dim.html">LIMIT_ITERATION_DIM</a></li>
<li><a href="ref/limit_mag.html">LIMIT_MAG</a></li>
<li><a href="ref/limit_repeat.html">LIMIT_REPEAT</a></li>
<li><a href="ref/limit_seq.html">LIMIT_SEQ</a></li>
<li><a href="ref/limit_slot_count.html">LIMIT_SLOT_COUNT</a></li>
<li><a href="ref/limit_slot_sig.html">LIMIT_SLOT_SIG</a></li>
<li><a href="ref/limit_tuple.html">LIMIT_TUPLE</a></li>
<li><a href="ref/limit_while.html">LIMIT_WHILE</a></li>
<li><a href="ref/line.html">LINE</a></li>
<li><a href="ref/list_append.html">LIST_APPEND</a></li>
<li><a href="ref/list_append_d.html">LIST_APPEND_D</a></li>
<li><a href="ref/list_at.html">LIST_AT</a></li>
<li><a href="ref/list_at_d.html">LIST_AT_D</a></li>
<li><a href="ref/list_cat.html">LIST_CAT</a></li>
<li><a href="ref/list_cat_d.html">LIST_CAT_D</a></li>
<li><a href="ref/list_cons.html">LIST_CONS*</a></li>
<li><a href="ref/list_enum.html">LIST_ENUM</a></li>
<li><a href="ref/list_enum_r.html">LIST_ENUM_R</a></li>
<li><a href="ref/list_filter.html">LIST_FILTER</a></li>
<li><a href="ref/list_filter_d.html">LIST_FILTER_D</a></li>
<li><a href="ref/list_first.html">LIST_FIRST</a></li>
<li><a href="ref/list_first_n.html">LIST_FIRST_N</a></li>
<li><a href="ref/list_first_n_d.html">LIST_FIRST_N_D</a></li>
<li><a href="ref/list_fold_left.html">LIST_FOLD_LEFT</a></li>
<li><a href="ref/list_fold_left_2nd.html">LIST_FOLD_LEFT_2ND*</a></li>
<li><a href="ref/list_fold_left_2nd_d.html">LIST_FOLD_LEFT_2ND_D*</a></li>
<li><a href="ref/list_fold_left_d.html">LIST_FOLD_LEFT_<i>d</i></a></li>
<li><a href="ref/list_fold_left_d_old.html">LIST_FOLD_LEFT_D*</a></li>
<li><a href="ref/list_fold_right.html">LIST_FOLD_RIGHT</a></li>
<li><a href="ref/list_fold_right_2nd.html">LIST_FOLD_RIGHT_2ND*</a></li>
<li><a href="ref/list_fold_right_2nd_d.html">LIST_FOLD_RIGHT_2ND_D*</a></li>
<li><a href="ref/list_fold_right_d.html">LIST_FOLD_RIGHT_<i>d</i></a></li>
<li><a href="ref/list_fold_right_d_old.html">LIST_FOLD_RIGHT_D*</a></li>
<li><a href="ref/list_for_each.html">LIST_FOR_EACH</a></li>
<li><a href="ref/list_for_each_i.html">LIST_FOR_EACH_I</a></li>
<li><a href="ref/list_for_each_i_r.html">LIST_FOR_EACH_I_R</a></li>
<li><a href="ref/list_for_each_product.html">LIST_FOR_EACH_PRODUCT</a></li>
<li><a href="ref/list_for_each_product_r.html">LIST_FOR_EACH_PRODUCT_R</a></li>
<li><a href="ref/list_for_each_r.html">LIST_FOR_EACH_R</a></li>
<li><a href="ref/list_is_cons.html">LIST_IS_CONS</a></li>
<li><a href="ref/list_is_nil.html">LIST_IS_NIL</a></li>
<li><a href="ref/list_nil.html">LIST_NIL*</a></li>
<li><a href="ref/list_rest.html">LIST_REST</a></li>
<li><a href="ref/list_rest_n.html">LIST_REST_N</a></li>
<li><a href="ref/list_rest_n_d.html">LIST_REST_N_D</a></li>
<li><a href="ref/list_reverse.html">LIST_REVERSE</a></li>
<li><a href="ref/list_reverse_d.html">LIST_REVERSE_D</a></li>
<li><a href="ref/list_size.html">LIST_SIZE</a></li>
<li><a href="ref/list_size_d.html">LIST_SIZE_D</a></li>
<li><a href="ref/list_to_tuple.html">LIST_TO_TUPLE</a></li>
<li><a href="ref/list_to_tuple_r.html">LIST_TO_TUPLE_R</a></li>
<li><a href="ref/list_transform.html">LIST_TRANSFORM</a></li>
<li><a href="ref/list_transform_d.html">LIST_TRANSFORM_D</a></li>
<li><a href="ref/local_iterate.html">LOCAL_ITERATE</a></li>
<li><a href="ref/local_limits.html">LOCAL_LIMITS</a></li>
<li><a href="ref/local_macro.html">LOCAL_MACRO</a></li>
<li><a href="ref/lparen.html">LPAREN</a></li>
<li><a href="ref/lparen_if.html">LPAREN_IF</a></li>
<!-- M -->
<li><a href="ref/max.html">MAX</a></li>
<li><a href="ref/max_d.html">MAX_D</a></li>
<li><a href="ref/min.html">MIN</a></li>
<li><a href="ref/min_d.html">MIN_D</a></li>
<li><a href="ref/mod.html">MOD</a></li>
<li><a href="ref/mod_d.html">MOD_D</a></li>
<li><a href="ref/mul.html">MUL</a></li>
<li><a href="ref/mul_d.html">MUL_D</a></li>
<!-- N -->
<li><a href="ref/nil.html">NIL</a></li>
<li><a href="ref/nor.html">NOR</a></li>
<li><a href="ref/not.html">NOT</a></li>
<li><a href="ref/not_equal.html">NOT_EQUAL</a></li>
<li><a href="ref/not_equal_d.html">NOT_EQUAL_D*</a></li>
<!-- O -->
<li><a href="ref/or.html">OR</a></li>
<!-- R -->
<li><a href="ref/relative_finish.html">RELATIVE_FINISH</a></li>
<li><a href="ref/relative_flags.html">RELATIVE_FLAGS</a></li>
<li><a href="ref/relative_iteration.html">RELATIVE_ITERATION</a></li>
<li><a href="ref/relative_start.html">RELATIVE_START</a></li>
<li><a href="ref/repeat.html">REPEAT</a></li>
<li><a href="ref/repeat_1st.html">REPEAT_1ST*</a></li>
<li><a href="ref/repeat_2nd.html">REPEAT_2ND*</a></li>
<li><a href="ref/repeat_3rd.html">REPEAT_3RD*</a></li>
<li><a href="ref/repeat_from_to.html">REPEAT_FROM_TO</a></li>
<li><a href="ref/repeat_from_to_1st.html">REPEAT_FROM_TO_1ST*</a></li>
<li><a href="ref/repeat_from_to_2nd.html">REPEAT_FROM_TO_2ND*</a></li>
<li><a href="ref/repeat_from_to_3rd.html">REPEAT_FROM_TO_3RD*</a></li>
<li><a href="ref/repeat_from_to_d.html">REPEAT_FROM_TO_D</a></li>
<li><a href="ref/repeat_from_to_d_z.html">REPEAT_FROM_TO_D_<i>z</i></a></li>
<li><a href="ref/repeat_from_to_z.html">REPEAT_FROM_TO_<i>z</i></a></li>
<li><a href="ref/repeat_z.html">REPEAT_<i>z</i></a></li>
<li><a href="ref/rparen.html">RPAREN</a></li>
<li><a href="ref/rparen_if.html">RPAREN_IF</a></li>
<!-- S -->
<li><a href="ref/seq_cat.html">SEQ_CAT</a></li>
<li><a href="ref/seq_cat_s.html">SEQ_CAT_S</a></li>
<li><a href="ref/seq_elem.html">SEQ_ELEM</a></li>
<li><a href="ref/seq_enum.html">SEQ_ENUM</a></li>
<li><a href="ref/seq_filter.html">SEQ_FILTER</a></li>
<li><a href="ref/seq_filter_s.html">SEQ_FILTER_S</a></li>
<li><a href="ref/seq_first_n.html">SEQ_FIRST_N</a></li>
<li><a href="ref/seq_fold_left.html">SEQ_FOLD_LEFT</a></li>
<li><a href="ref/seq_fold_left_s.html">SEQ_FOLD_LEFT_<i>s</i></a></li>
<li><a href="ref/seq_fold_right.html">SEQ_FOLD_RIGHT</a></li>
<li><a href="ref/seq_fold_right_s.html">SEQ_FOLD_RIGHT_<i>s</i></a></li>
<li><a href="ref/seq_for_each.html">SEQ_FOR_EACH</a></li>
<li><a href="ref/seq_for_each_i.html">SEQ_FOR_EACH_I</a></li>
<li><a href="ref/seq_for_each_i_r.html">SEQ_FOR_EACH_I_R</a></li>
<li><a href="ref/seq_for_each_product.html">SEQ_FOR_EACH_PRODUCT</a></li>
<li><a href="ref/seq_for_each_product_r.html">SEQ_FOR_EACH_PRODUCT_R</a></li>
<li><a href="ref/seq_for_each_r.html">SEQ_FOR_EACH_R</a></li>
<li><a href="ref/seq_head.html">SEQ_HEAD</a></li>
<li><a href="ref/seq_insert.html">SEQ_INSERT</a></li>
<li><a href="ref/seq_nil.html">SEQ_NIL</a></li>
<li><a href="ref/seq_pop_back.html">SEQ_POP_BACK</a></li>
<li><a href="ref/seq_pop_front.html">SEQ_POP_FRONT</a></li>
<li><a href="ref/seq_push_back.html">SEQ_PUSH_BACK</a></li>
<li><a href="ref/seq_push_front.html">SEQ_PUSH_FRONT</a></li>
<li><a href="ref/seq_remove.html">SEQ_REMOVE</a></li>
<li><a href="ref/seq_replace.html">SEQ_REPLACE</a></li>
<li><a href="ref/seq_rest_n.html">SEQ_REST_N</a></li>
<li><a href="ref/seq_reverse.html">SEQ_REVERSE</a></li>
<li><a href="ref/seq_reverse_s.html">SEQ_REVERSE_S</a></li>
<li><a href="ref/seq_size.html">SEQ_SIZE</a></li>
<li><a href="ref/seq_subseq.html">SEQ_SUBSEQ</a></li>
<li><a href="ref/seq_tail.html">SEQ_TAIL</a></li>
<li><a href="ref/seq_to_array.html">SEQ_TO_ARRAY</a></li>
<li><a href="ref/seq_to_tuple.html">SEQ_TO_TUPLE</a></li>
<li><a href="ref/seq_transform.html">SEQ_TRANSFORM</a></li>
<li><a href="ref/seq_transform_s.html">SEQ_TRANSFORM_S</a></li>
<li><a href="ref/slot.html">SLOT</a></li>
<li><a href="ref/stringize.html">STRINGIZE</a></li>
<li><a href="ref/sub.html">SUB</a></li>
<li><a href="ref/sub_d.html">SUB_D</a></li>
<!-- T -->
<li><a href="ref/tuple_eat.html">TUPLE_EAT</a></li>
<li><a href="ref/tuple_elem.html">TUPLE_ELEM</a></li>
<li><a href="ref/tuple_rem.html">TUPLE_REM</a></li>
<li><a href="ref/tuple_rem_ctor.html">TUPLE_REM_CTOR</a></li>
<li><a href="ref/tuple_reverse.html">TUPLE_REVERSE</a></li>
<li><a href="ref/tuple_to_list.html">TUPLE_TO_LIST</a></li>
<li><a href="ref/tuple_to_seq.html">TUPLE_TO_SEQ</a></li>
<!-- V -->
<li><a href="ref/value.html">VALUE</a></li>
<!-- W -->
<li><a href="ref/while.html">WHILE</a></li>
<li><a href="ref/while_d.html">WHILE_<i>d</i></a></li>
<li><a href="ref/wstringize.html">WSTRINGIZE</a></li>
<!-- X -->
<li><a href="ref/xor.html">XOR</a></li>
</ul>
</body>
<head>
<title>ref.html</title>
<link rel="stylesheet" type="text/css" href="styles.css">
<base target="desc">
</head>
<body>
<h4>Reference <small><a href="contents.html" target="index">[back]</a></small></h4>
<ul>
<!-- A -->
<li><a href="ref/add.html">ADD</a></li>
<li><a href="ref/add_d.html">ADD_D</a></li>
<li><a href="ref/and.html">AND</a></li>
<li><a href="ref/apply.html">APPLY</a></li>
<li><a href="ref/array_data.html">ARRAY_DATA</a></li>
<li><a href="ref/array_elem.html">ARRAY_ELEM</a></li>
<li><a href="ref/array_size.html">ARRAY_SIZE</a></li>
<li><a href="ref/assert.html">ASSERT</a></li>
<li><a href="ref/assert_msg.html">ASSERT_MSG</a></li>
<li><a href="ref/assign_slot.html">ASSIGN_SLOT</a></li>
<!-- B -->
<li><a href="ref/bitand.html">BITAND</a></li>
<li><a href="ref/bitnor.html">BITNOR</a></li>
<li><a href="ref/bitor.html">BITOR</a></li>
<li><a href="ref/bitxor.html">BITXOR</a></li>
<li><a href="ref/bool.html">BOOL</a></li>
<!-- C -->
<li><a href="ref/cat.html">CAT</a></li>
<li><a href="ref/comma.html">COMMA</a></li>
<li><a href="ref/comma_if.html">COMMA_IF</a></li>
<li><a href="ref/compl.html">COMPL</a></li>
<li><a href="ref/config_extended_line_info.html">CONFIG_EXTENDED_LINE_INFO</a></li>
<!-- D -->
<li><a href="ref/dec.html">DEC</a></li>
<li><a href="ref/deduce_d.html">DEDUCE_D</a></li>
<li><a href="ref/deduce_r.html">DEDUCE_R</a></li>
<li><a href="ref/deduce_z.html">DEDUCE_Z</a></li>
<li><a href="ref/div.html">DIV</a></li>
<li><a href="ref/div_d.html">DIV_D</a></li>
<!-- E -->
<li><a href="ref/empty.html">EMPTY</a></li>
<li><a href="ref/enum.html">ENUM</a></li>
<li><a href="ref/enum_binary_params.html">ENUM_BINARY_PARAMS</a></li>
<li><a href="ref/enum_binary_params_z.html">ENUM_BINARY_PARAMS_Z</a></li>
<li><a href="ref/enum_params.html">ENUM_PARAMS</a></li>
<li><a href="ref/enum_params_with_a_default.html">ENUM_PARAMS_WITH_A_DEFAULT*</a></li>
<li><a href="ref/enum_params_with_defaults.html">ENUM_PARAMS_WITH_DEFAULTS*</a></li>
<li><a href="ref/enum_params_z.html">ENUM_PARAMS_Z</a></li>
<li><a href="ref/enum_shifted.html">ENUM_SHIFTED</a></li>
<li><a href="ref/enum_shifted_params.html">ENUM_SHIFTED_PARAMS</a></li>
<li><a href="ref/enum_shifted_params_z.html">ENUM_SHIFTED_PARAMS_Z</a></li>
<li><a href="ref/enum_shifted_z.html">ENUM_SHIFTED_<i>z</i></a></li>
<li><a href="ref/enum_trailing.html">ENUM_TRAILING</a></li>
<li><a href="ref/enum_trailing_binary_params.html">ENUM_TRAILING_BINARY_PARAMS</a></li>
<li><a href="ref/enum_trailing_binary_params_z.html">ENUM_TRAILING_BINARY_PARAMS_Z</a></li>
<li><a href="ref/enum_trailing_params.html">ENUM_TRAILING_PARAMS</a></li>
<li><a href="ref/enum_trailing_params_z.html">ENUM_TRAILING_PARAMS_Z</a></li>
<li><a href="ref/enum_trailing_z.html">ENUM_TRAILING_<i>z</i></a></li>
<li><a href="ref/enum_z.html">ENUM_<i>z</i></a></li>
<li><a href="ref/equal.html">EQUAL</a></li>
<li><a href="ref/equal_d.html">EQUAL_D*</a></li>
<li><a href="ref/expand.html">EXPAND</a></li>
<li><a href="ref/expr_if.html">EXPR_IF</a></li>
<li><a href="ref/expr_iif.html">EXPR_IIF</a></li>
<!-- F -->
<li><a href="ref/filename_x.html">FILENAME_<i>x</i></a></li>
<li><a href="ref/for.html">FOR</a></li>
<li><a href="ref/for_r.html">FOR_<i>r</i></a></li>
<li><a href="ref/frame_finish.html">FRAME_FINISH</a></li>
<li><a href="ref/frame_flags.html">FRAME_FLAGS</a></li>
<li><a href="ref/frame_iteration.html">FRAME_ITERATION</a></li>
<li><a href="ref/frame_start.html">FRAME_START</a></li>
<!-- G -->
<li><a href="ref/greater.html">GREATER</a></li>
<li><a href="ref/greater_d.html">GREATER_D</a></li>
<li><a href="ref/greater_equal.html">GREATER_EQUAL</a></li>
<li><a href="ref/greater_equal_d.html">GREATER_EQUAL_D</a></li>
<!-- I -->
<li><a href="ref/identity.html">IDENTITY</a></li>
<li><a href="ref/if.html">IF</a></li>
<li><a href="ref/iif.html">IIF</a></li>
<li><a href="ref/inc.html">INC</a></li>
<li><a href="ref/include_self.html">INCLUDE_SELF</a></li>
<li><a href="ref/indirect_self.html">INDIRECT_SELF</a></li>
<li><a href="ref/intercept.html">INTERCEPT</a></li>
<li><a href="ref/is_iterating.html">IS_ITERATING</a></li>
<li><a href="ref/is_selfish.html">IS_SELFISH</a></li>
<li><a href="ref/iterate.html">ITERATE</a></li>
<li><a href="ref/iteration.html">ITERATION</a></li>
<li><a href="ref/iteration_depth.html">ITERATION_DEPTH</a></li>
<li><a href="ref/iteration_finish.html">ITERATION_FINISH</a></li>
<li><a href="ref/iteration_flags.html">ITERATION_FLAGS</a></li>
<li><a href="ref/iteration_limits.html">ITERATION_LIMITS</a></li>
<li><a href="ref/iteration_params_x.html">ITERATION_PARAMS_<i>x</i></a></li>
<li><a href="ref/iteration_start.html">ITERATION_START</a></li>
<!-- L -->
<li><a href="ref/less.html">LESS</a></li>
<li><a href="ref/less_d.html">LESS_D</a></li>
<li><a href="ref/less_equal.html">LESS_EQUAL</a></li>
<li><a href="ref/less_equal_d.html">LESS_EQUAL_D</a></li>
<li><a href="ref/limit_dim.html">LIMIT_DIM</a></li>
<li><a href="ref/limit_for.html">LIMIT_FOR</a></li>
<li><a href="ref/limit_iteration.html">LIMIT_ITERATION</a></li>
<li><a href="ref/limit_iteration_dim.html">LIMIT_ITERATION_DIM</a></li>
<li><a href="ref/limit_mag.html">LIMIT_MAG</a></li>
<li><a href="ref/limit_repeat.html">LIMIT_REPEAT</a></li>
<li><a href="ref/limit_slot_count.html">LIMIT_SLOT_COUNT</a></li>
<li><a href="ref/limit_slot_sig.html">LIMIT_SLOT_SIG</a></li>
<li><a href="ref/limit_tuple.html">LIMIT_TUPLE</a></li>
<li><a href="ref/limit_while.html">LIMIT_WHILE</a></li>
<li><a href="ref/line.html">LINE</a></li>
<li><a href="ref/list_append.html">LIST_APPEND</a></li>
<li><a href="ref/list_append_d.html">LIST_APPEND_D</a></li>
<li><a href="ref/list_at.html">LIST_AT</a></li>
<li><a href="ref/list_at_d.html">LIST_AT_D</a></li>
<li><a href="ref/list_cat.html">LIST_CAT</a></li>
<li><a href="ref/list_cat_d.html">LIST_CAT_D</a></li>
<li><a href="ref/list_cons.html">LIST_CONS*</a></li>
<li><a href="ref/list_enum.html">LIST_ENUM</a></li>
<li><a href="ref/list_enum_r.html">LIST_ENUM_R</a></li>
<li><a href="ref/list_filter.html">LIST_FILTER</a></li>
<li><a href="ref/list_filter_d.html">LIST_FILTER_D</a></li>
<li><a href="ref/list_first.html">LIST_FIRST</a></li>
<li><a href="ref/list_first_n.html">LIST_FIRST_N</a></li>
<li><a href="ref/list_first_n_d.html">LIST_FIRST_N_D</a></li>
<li><a href="ref/list_fold_left.html">LIST_FOLD_LEFT</a></li>
<li><a href="ref/list_fold_left_2nd.html">LIST_FOLD_LEFT_2ND*</a></li>
<li><a href="ref/list_fold_left_2nd_d.html">LIST_FOLD_LEFT_2ND_D*</a></li>
<li><a href="ref/list_fold_left_d.html">LIST_FOLD_LEFT_<i>d</i></a></li>
<li><a href="ref/list_fold_left_d_old.html">LIST_FOLD_LEFT_D*</a></li>
<li><a href="ref/list_fold_right.html">LIST_FOLD_RIGHT</a></li>
<li><a href="ref/list_fold_right_2nd.html">LIST_FOLD_RIGHT_2ND*</a></li>
<li><a href="ref/list_fold_right_2nd_d.html">LIST_FOLD_RIGHT_2ND_D*</a></li>
<li><a href="ref/list_fold_right_d.html">LIST_FOLD_RIGHT_<i>d</i></a></li>
<li><a href="ref/list_fold_right_d_old.html">LIST_FOLD_RIGHT_D*</a></li>
<li><a href="ref/list_for_each.html">LIST_FOR_EACH</a></li>
<li><a href="ref/list_for_each_i.html">LIST_FOR_EACH_I</a></li>
<li><a href="ref/list_for_each_i_r.html">LIST_FOR_EACH_I_R</a></li>
<li><a href="ref/list_for_each_product.html">LIST_FOR_EACH_PRODUCT</a></li>
<li><a href="ref/list_for_each_product_r.html">LIST_FOR_EACH_PRODUCT_R</a></li>
<li><a href="ref/list_for_each_r.html">LIST_FOR_EACH_R</a></li>
<li><a href="ref/list_is_cons.html">LIST_IS_CONS</a></li>
<li><a href="ref/list_is_nil.html">LIST_IS_NIL</a></li>
<li><a href="ref/list_nil.html">LIST_NIL*</a></li>
<li><a href="ref/list_rest.html">LIST_REST</a></li>
<li><a href="ref/list_rest_n.html">LIST_REST_N</a></li>
<li><a href="ref/list_rest_n_d.html">LIST_REST_N_D</a></li>
<li><a href="ref/list_reverse.html">LIST_REVERSE</a></li>
<li><a href="ref/list_reverse_d.html">LIST_REVERSE_D</a></li>
<li><a href="ref/list_size.html">LIST_SIZE</a></li>
<li><a href="ref/list_size_d.html">LIST_SIZE_D</a></li>
<li><a href="ref/list_to_tuple.html">LIST_TO_TUPLE</a></li>
<li><a href="ref/list_to_tuple_r.html">LIST_TO_TUPLE_R</a></li>
<li><a href="ref/list_transform.html">LIST_TRANSFORM</a></li>
<li><a href="ref/list_transform_d.html">LIST_TRANSFORM_D</a></li>
<li><a href="ref/local_iterate.html">LOCAL_ITERATE</a></li>
<li><a href="ref/local_limits.html">LOCAL_LIMITS</a></li>
<li><a href="ref/local_macro.html">LOCAL_MACRO</a></li>
<li><a href="ref/lparen.html">LPAREN</a></li>
<li><a href="ref/lparen_if.html">LPAREN_IF</a></li>
<!-- M -->
<li><a href="ref/max.html">MAX</a></li>
<li><a href="ref/max_d.html">MAX_D</a></li>
<li><a href="ref/min.html">MIN</a></li>
<li><a href="ref/min_d.html">MIN_D</a></li>
<li><a href="ref/mod.html">MOD</a></li>
<li><a href="ref/mod_d.html">MOD_D</a></li>
<li><a href="ref/mul.html">MUL</a></li>
<li><a href="ref/mul_d.html">MUL_D</a></li>
<!-- N -->
<li><a href="ref/nil.html">NIL</a></li>
<li><a href="ref/nor.html">NOR</a></li>
<li><a href="ref/not.html">NOT</a></li>
<li><a href="ref/not_equal.html">NOT_EQUAL</a></li>
<li><a href="ref/not_equal_d.html">NOT_EQUAL_D*</a></li>
<!-- O -->
<li><a href="ref/or.html">OR</a></li>
<!-- R -->
<li><a href="ref/relative_finish.html">RELATIVE_FINISH</a></li>
<li><a href="ref/relative_flags.html">RELATIVE_FLAGS</a></li>
<li><a href="ref/relative_iteration.html">RELATIVE_ITERATION</a></li>
<li><a href="ref/relative_start.html">RELATIVE_START</a></li>
<li><a href="ref/repeat.html">REPEAT</a></li>
<li><a href="ref/repeat_1st.html">REPEAT_1ST*</a></li>
<li><a href="ref/repeat_2nd.html">REPEAT_2ND*</a></li>
<li><a href="ref/repeat_3rd.html">REPEAT_3RD*</a></li>
<li><a href="ref/repeat_from_to.html">REPEAT_FROM_TO</a></li>
<li><a href="ref/repeat_from_to_1st.html">REPEAT_FROM_TO_1ST*</a></li>
<li><a href="ref/repeat_from_to_2nd.html">REPEAT_FROM_TO_2ND*</a></li>
<li><a href="ref/repeat_from_to_3rd.html">REPEAT_FROM_TO_3RD*</a></li>
<li><a href="ref/repeat_from_to_d.html">REPEAT_FROM_TO_D</a></li>
<li><a href="ref/repeat_from_to_d_z.html">REPEAT_FROM_TO_D_<i>z</i></a></li>
<li><a href="ref/repeat_from_to_z.html">REPEAT_FROM_TO_<i>z</i></a></li>
<li><a href="ref/repeat_z.html">REPEAT_<i>z</i></a></li>
<li><a href="ref/rparen.html">RPAREN</a></li>
<li><a href="ref/rparen_if.html">RPAREN_IF</a></li>
<!-- S -->
<li><a href="ref/slot.html">SLOT</a></li>
<li><a href="ref/stringize.html">STRINGIZE</a></li>
<li><a href="ref/sub.html">SUB</a></li>
<li><a href="ref/sub_d.html">SUB_D</a></li>
<!-- T -->
<li><a href="ref/tuple_eat.html">TUPLE_EAT</a></li>
<li><a href="ref/tuple_elem.html">TUPLE_ELEM</a></li>
<li><a href="ref/tuple_rem.html">TUPLE_REM</a></li>
<li><a href="ref/tuple_reverse.html">TUPLE_REVERSE</a></li>
<li><a href="ref/tuple_to_list.html">TUPLE_TO_LIST</a></li>
<!-- V -->
<li><a href="ref/value.html">VALUE</a></li>
<!-- W -->
<li><a href="ref/while.html">WHILE</a></li>
<li><a href="ref/while_d.html">WHILE_<i>d</i></a></li>
<!-- X -->
<li><a href="ref/xor.html">XOR</a></li>
</ul>
</body>
</html>

View File

@ -1,60 +0,0 @@
<html>
<head>
<title>BOOST_PP_ARRAY_INSERT</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_ARRAY_INSERT</b> macro inserts an element into an <i>array</i>.
</div>
<h4>Usage</h4>
<div class="code">
<b>BOOST_PP_ARRAY_INSERT</b>(<i>array</i>, <i>i</i>, <i>elem</i>)
</div>
<h4>Arguments</h4>
<dl>
<dt>array</dt>
<dd>
The <i>array</i> into which an element is to be inserted.
</dd>
<dt>i</dt>
<dd>
The zero-based position in <i>array</i> where an element is to be inserted.&nbsp;
Valid values range from <i>0</i> to <b>BOOST_PP_ARRAY_SIZE</b>(<i>array</i>).
</dd>
<dt>elem</dt>
<dd>
The element to insert.
</dd>
</dl>
<h4>Remarks</h4>
<div>
This macro inserts <i>elem</i> before the element at index <i>i</i>.
</div>
<div>
If the operation attempts to create an <i>array</i> that is larger than <b>BOOST_PP_LIMIT_TUPLE</b>,
the result is undefined.
</div>
<div>
This macro uses <b>BOOST_PP_WHILE</b> interally.&nbsp;
Therefore, to use the <i>d</i> parameter passed from other macros that use <b>BOOST_PP_WHILE</b>,
see <b>BOOST_PP_ARRAY_INSERT_D</b>.
</div>
<h4>See Also</h4>
<ul>
<li><a href="array_insert_d.html">BOOST_PP_ARRAY_INSERT_D</a></li>
</ul>
<h4>Requirements</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/array/insert.hpp.html">&lt;boost/preprocessor/array/insert.hpp&gt;</a>
</div>
<h4>Sample Code</h4>
<div><pre>
#include &lt;<a href="../headers/array/insert.hpp.html">boost/preprocessor/array/insert.hpp</a>&gt;
#define ARRAY (3, (a, b, d))
<a href="array_insert.html">BOOST_PP_ARRAY_INSERT</a>(ARRAY, 2, c) // expands to (4, (a, b, c, d))
</pre></div>
</body>
</html>

View File

@ -1,52 +0,0 @@
<html>
<head>
<title>BOOST_PP_ARRAY_INSERT_D</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_ARRAY_INSERT_D</b> macro inserts an element into an <i>array</i>.&nbsp;
It reenters <b>BOOST_PP_WHILE</b> with maximum efficiency.
</div>
<h4>Usage</h4>
<div class="code">
<b>BOOST_PP_ARRAY_INSERT_D</b>(<i>d</i>, <i>array</i>, <i>i</i>, <i>elem</i>)
</div>
<h4>Arguments</h4>
<dl>
<dt>d</dt>
<dd>
The next available <b>BOOST_PP_WHILE</b> iteration.
</dd>
<dt>array</dt>
<dd>
The <i>array</i> into which an element is to be inserted.
</dd>
<dt>i</dt>
<dd>
The zero-based position in <i>array</i> where an element is to be inserted.&nbsp;
Valid values range from <i>0</i> to <b>BOOST_PP_ARRAY_SIZE</b>(<i>array</i>).
</dd>
<dt>elem</dt>
<dd>
The element to insert.
</dd>
</dl>
<h4>Remarks</h4>
<div>
This macro inserts <i>elem</i> before the element at index <i>i</i>.
</div>
<div>
If the operation attempts to create an <i>array</i> that is larger than <b>BOOST_PP_LIMIT_TUPLE</b>,
the result is undefined.
</div>
<h4>See Also</h4>
<ul>
<li><a href="array_insert.html">BOOST_PP_ARRAY_INSERT</a></li>
</ul>
<h4>Requirements</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/array/insert.hpp.html">&lt;boost/preprocessor/array/insert.hpp&gt;</a>
</div>
</body>
</html>

View File

@ -1,48 +0,0 @@
<html>
<head>
<title>BOOST_PP_ARRAY_POP_BACK</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_ARRAY_POP_BACK</b> macro pops an element from the end of an <i>array</i>.
</div>
<h4>Usage</h4>
<div class="code">
<b>BOOST_PP_ARRAY_POP_BACK</b>(<i>array</i>)
</div>
<h4>Arguments</h4>
<dl>
<dt>array</dt>
<dd>
The <i>array</i> to pop an element from.
</dd>
</dl>
<h4>Remarks</h4>
<div>
This macro returns <i>array</i> after removing the last element.&nbsp;
If <i>array</i> has no elements, the result of applying this macro is undefined.
</div>
<div>
This macro uses <b>BOOST_PP_REPEAT</b> internally.&nbsp;
Therefore, to use the <i>z</i> parameter passed from other macros that use
<b>BOOST_PP_REPEAT</b>, see <b>BOOST_PP_ARRAY_POP_BACK_Z</b>
</div>
<h4>See Also</h4>
<ul>
<li><a href="array_pop_back_z.html">BOOST_PP_ARRAY_POP_BACK_Z</a></li>
</ul>
<h4>Requirements</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/array/pop_back.hpp.html">&lt;boost/preprocessor/array/pop_back.hpp&gt;</a>
</div>
<h4>Sample Code</h4>
<div><pre>
#include &lt;<a href="../headers/array/pop_back.hpp.html">boost/preprocessor/array/pop_back.hpp</a>&gt;
#define ARRAY (3, (a, b, c))
<a href="array_pop_back.html">BOOST_PP_ARRAY_POP_BACK</a>(ARRAY) // expands to (2, (a, b))
</pre></div>
</body>
</html>

View File

@ -1,40 +0,0 @@
<html>
<head>
<title>BOOST_PP_ARRAY_POP_BACK_Z</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_ARRAY_POP_BACK_Z</b> macro pops an element from the end of an <i>array</i>.&nbsp;
It reenters <b>BOOST_PP_REPEAT</b> with maximum efficiency.
</div>
<h4>Usage</h4>
<div class="code">
<b>BOOST_PP_ARRAY_POP_BACK_Z</b>(<i>z</i>, <i>array</i>)
</div>
<h4>Arguments</h4>
<dl>
<dt>z</dt>
<dd>
The next available <b>BOOST_PP_REPEAT</b> dimension.
</dd>
<dt>array</dt>
<dd>
The <i>array</i> to pop an element from.
</dd>
</dl>
<h4>Remarks</h4>
<div>
This macro returns <i>array</i> after removing the last element.&nbsp;
If <i>array</i> has no elements, the result of applying this macro is undefined.
</div>
<h4>See Also</h4>
<ul>
<li><a href="array_pop_back.html">BOOST_PP_ARRAY_POP_BACK</a></li>
</ul>
<h4>Requirements</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/array/pop_back.hpp.html">&lt;boost/preprocessor/array/pop_back.hpp&gt;</a>
</div>
</body>
</html>

View File

@ -1,48 +0,0 @@
<html>
<head>
<title>BOOST_PP_ARRAY_POP_FRONT</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_ARRAY_POP_FRONT</b> macro pops an element from the end of an <i>array</i>.
</div>
<h4>Usage</h4>
<div class="code">
<b>BOOST_PP_ARRAY_POP_FRONT</b>(<i>array</i>)
</div>
<h4>Arguments</h4>
<dl>
<dt>array</dt>
<dd>
The <i>array</i> to pop an element from.
</dd>
</dl>
<h4>Remarks</h4>
<div>
This macro returns <i>array</i> after removing the first element.&nbsp;
If <i>array</i> has no elements, the result of applying this macro is undefined.
</div>
<div>
This macro uses <b>BOOST_PP_REPEAT</b> internally.&nbsp;
Therefore, to use the <i>z</i> parameter passed from other macros that use
<b>BOOST_PP_REPEAT</b>, see <b>BOOST_PP_ARRAY_POP_FRONT_Z</b>
</div>
<h4>See Also</h4>
<ul>
<li><a href="array_pop_front_z.html">BOOST_PP_ARRAY_POP_FRONT_Z</a></li>
</ul>
<h4>Requirements</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/array/pop_front.hpp.html">&lt;boost/preprocessor/array/pop_front.hpp&gt;</a>
</div>
<h4>Sample Code</h4>
<div><pre>
#include &lt;<a href="../headers/array/pop_front.hpp.html">boost/preprocessor/array/pop_front.hpp</a>&gt;
#define ARRAY (3, (a, b, c))
<a href="array_pop_front.html">BOOST_PP_ARRAY_POP_FRONT</a>(ARRAY) // expands to (2, (b, c))
</pre></div>
</body>
</html>

View File

@ -1,40 +0,0 @@
<html>
<head>
<title>BOOST_PP_ARRAY_POP_FRONT_Z</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_ARRAY_POP_FRONT_Z</b> macro pops an element from the beginning of an <i>array</i>.&nbsp;
It reenters <b>BOOST_PP_REPEAT</b> with maximum efficiency.
</div>
<h4>Usage</h4>
<div class="code">
<b>BOOST_PP_ARRAY_POP_FRONT_Z</b>(<i>z</i>, <i>array</i>)
</div>
<h4>Arguments</h4>
<dl>
<dt>z</dt>
<dd>
The next available <b>BOOST_PP_REPEAT</b> dimension.
</dd>
<dt>array</dt>
<dd>
The <i>array</i> to pop an element from.
</dd>
</dl>
<h4>Remarks</h4>
<div>
This macro returns <i>array</i> after removing the first element.&nbsp;
If <i>array</i> has no elements, the result of applying this macro is undefined.
</div>
<h4>See Also</h4>
<ul>
<li><a href="array_pop_front.html">BOOST_PP_ARRAY_POP_FRONT</a></li>
</ul>
<h4>Requirements</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/array/pop_front.hpp.html">&lt;boost/preprocessor/array/pop_front.hpp&gt;</a>
</div>
</body>
</html>

View File

@ -1,38 +0,0 @@
<html>
<head>
<title>BOOST_PP_ARRAY_PUSH_BACK</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_ARRAY_PUSH_BACK</b> macro appends an element to the end of an <i>array</i>.
</div>
<h4>Usage</h4>
<div class="code">
<b>BOOST_PP_ARRAY_PUSH_BACK</b>(<i>array</i>, <i>elem</i>)
</div>
<h4>Arguments</h4>
<dl>
<dt>array</dt>
<dd>
The <i>array</i> to append an element to.
</dd>
<dt>elem</dt>
<dd>
The element to append.
</dd>
</dl>
<h4>Requirements</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/array/push_back.hpp.html">&lt;boost/preprocessor/array/push_back.hpp&gt;</a>
</div>
<h4>Sample Code</h4>
<div><pre>
#include &lt;<a href="../headers/array/push_back.hpp.html">boost/preprocessor/array/push_back.hpp</a>&gt;
#define ARRAY (3, (a, b, c))
<a href="array_push_back.html">BOOST_PP_ARRAY_PUSH_BACK</a>(ARRAY, d) // expands to (4, (a, b, c, d))
</pre></div>
</body>
</html>

View File

@ -1,38 +0,0 @@
<html>
<head>
<title>BOOST_PP_ARRAY_PUSH_FRONT</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_ARRAY_PUSH_FRONT</b> macro appends an element to the beginning of an <i>array</i>.
</div>
<h4>Usage</h4>
<div class="code">
<b>BOOST_PP_ARRAY_PUSH_FRONT</b>(<i>array</i>, <i>elem</i>)
</div>
<h4>Arguments</h4>
<dl>
<dt>array</dt>
<dd>
The <i>array</i> to append an element to.
</dd>
<dt>elem</dt>
<dd>
The element to append.
</dd>
</dl>
<h4>Requirements</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/array/push_front.hpp.html">&lt;boost/preprocessor/array/push_front.hpp&gt;</a>
</div>
<h4>Sample Code</h4>
<div><pre>
#include &lt;<a href="../headers/array/push_front.hpp.html">boost/preprocessor/array/push_front.hpp</a>&gt;
#define ARRAY (3, (b, c, d))
<a href="array_push_front.html">BOOST_PP_ARRAY_PUSH_FRONT</a>(ARRAY, a) // expands to (4, (a, b, c, d))
</pre></div>
</body>
</html>

View File

@ -1,49 +0,0 @@
<html>
<head>
<title>BOOST_PP_ARRAY_REMOVE</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_ARRAY_REMOVE</b> macro removes an element from an <i>array</i>.
</div>
<h4>Usage</h4>
<div class="code">
<b>BOOST_PP_ARRAY_REMOVE</b>(<i>array</i>, <i>i</i>)
</div>
<h4>Arguments</h4>
<dl>
<dt>array</dt>
<dd>
The <i>array</i> from which an element is to be removed.
</dd>
<dt>i</dt>
<dd>
The zero-based position in <i>array</i> of the element to be removed.&nbsp;
Valid values range from <i>0</i> to <b>BOOST_PP_ARRAY_SIZE</b>(<i>array</i>) - <i>1</i>.
</dd>
</dl>
<h4>Remarks</h4>
<div>
This macro uses <b>BOOST_PP_WHILE</b> interally.&nbsp;
Therefore, to use the <i>d</i> parameter passed from other macros that use <b>BOOST_PP_WHILE</b>,
see <b>BOOST_PP_ARRAY_REMOVE_D</b>.
</div>
<h4>See Also</h4>
<ul>
<li><a href="array_remove_d.html">BOOST_PP_ARRAY_REMOVE_D</a></li>
</ul>
<h4>Requirements</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/array/remove.hpp.html">&lt;boost/preprocessor/array/remove.hpp&gt;</a>
</div>
<h4>Sample Code</h4>
<div><pre>
#include &lt;<a href="../headers/array/remove.hpp.html">boost/preprocessor/array/remove.hpp</a>&gt;
#define ARRAY (3, (a, b, d))
<a href="array_remove.html">BOOST_PP_ARRAY_REMOVE</a>(ARRAY, 2) // expands to (2, (a, b))
</pre></div>
</body>
</html>

View File

@ -1,40 +0,0 @@
<html>
<head>
<title>BOOST_PP_ARRAY_REMOVE_D</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_ARRAY_REMOVE_D</b> macro removes an element from an <i>array</i>.&nbsp;
It reenters <b>BOOST_PP_WHILE</b> with maximum efficiency.
</div>
<h4>Usage</h4>
<div class="code">
<b>BOOST_PP_ARRAY_REMOVE_D</b>(<i>d</i>, <i>array</i>, <i>i</i>)
</div>
<h4>Arguments</h4>
<dl>
<dt>d</dt>
<dd>
The next available <b>BOOST_PP_WHILE</b> iteration.
</dd>
<dt>array</dt>
<dd>
The <i>array</i> from which an element is to be removed.
</dd>
<dt>i</dt>
<dd>
The zero-based position in <i>array</i> of the element to be removed.&nbsp;
Valid values range from <i>0</i> to <b>BOOST_PP_ARRAY_SIZE</b>(<i>array</i>) - <i>1</i>.
</dd>
</dl>
<h4>See Also</h4>
<ul>
<li><a href="array_remove.html">BOOST_PP_ARRAY_REMOVE</a></li>
</ul>
<h4>Requirements</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/array/remove.hpp.html">&lt;boost/preprocessor/array/remove.hpp&gt;</a>
</div>
</body>
</html>

View File

@ -1,53 +0,0 @@
<html>
<head>
<title>BOOST_PP_ARRAY_REPLACE</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_ARRAY_REPLACE</b> macro replaces an element in an <i>array</i>.
</div>
<h4>Usage</h4>
<div class="code">
<b>BOOST_PP_ARRAY_REPLACE</b>(<i>array</i>, <i>i</i>, <i>elem</i>)
</div>
<h4>Arguments</h4>
<dl>
<dt>array</dt>
<dd>
An <i>array</i> to replace an element in.
</dd>
<dt>i</dt>
<dd>
The zero-based position in <i>array</i> of the element to be replaced.&nbsp;
Valid values range from <i>0</i> to <b>BOOST_PP_ARRAY_SIZE</b>(<i>array</i>) - <i>1</i>.
</dd>
<dt>elem</dt>
<dd>
The replacement element.
</dd>
</dl>
<h4>Remarks</h4>
<div>
This macro uses <b>BOOST_PP_WHILE</b> interally.&nbsp;
Therefore, to use the <i>d</i> parameter passed from other macros that use <b>BOOST_PP_WHILE</b>,
see <b>BOOST_PP_ARRAY_REPLACE_D</b>.
</div>
<h4>See Also</h4>
<ul>
<li><a href="array_replace_d.html">BOOST_PP_ARRAY_REPLACE_D</a></li>
</ul>
<h4>Requirements</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/array/replace.hpp.html">&lt;boost/preprocessor/array/replace.hpp&gt;</a>
</div>
<h4>Sample Code</h4>
<div><pre>
#include &lt;<a href="../headers/array/replace.hpp.html">boost/preprocessor/array/replace.hpp</a>&gt;
#define ARRAY (3, (a, x, c))
<a href="array_replace.html">BOOST_PP_ARRAY_REPLACE</a>(ARRAY, 1, b) // expands to (3, (a, b, c))
</pre></div>
</body>
</html>

View File

@ -1,44 +0,0 @@
<html>
<head>
<title>BOOST_PP_ARRAY_REPLACE_D</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_ARRAY_REPLACE_D</b> macro replaces an element in an <i>array</i>.&nbsp;
It reenters <b>BOOST_PP_WHILE</b> with maximum efficiency.
</div>
<h4>Usage</h4>
<div class="code">
<b>BOOST_PP_ARRAY_REPLACE_D</b>(<i>d</i>, <i>array</i>, <i>i</i>, <i>elem</i>)
</div>
<h4>Arguments</h4>
<dl>
<dt>d</dt>
<dd>
The next available <b>BOOST_PP_WHILE</b> iteration.
</dd>
<dt>array</dt>
<dd>
An <i>array</i> to replace an element in.
</dd>
<dt>i</dt>
<dd>
The zero-based position in <i>array</i> of the element to be replaced.&nbsp;
Valid values range from <i>0</i> to <b>BOOST_PP_ARRAY_SIZE</b>(<i>array</i>) - <i>1</i>.
</dd>
<dt>elem</dt>
<dd>
The replacement element.
</dd>
</dl>
<h4>See Also</h4>
<ul>
<li><a href="array_replace.html">BOOST_PP_ARRAY_REPLACE</a></li>
</ul>
<h4>Requirements</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/array/replace.hpp.html">&lt;boost/preprocessor/array/replace.hpp&gt;</a>
</div>
</body>
</html>

View File

@ -1,34 +0,0 @@
<html>
<head>
<title>BOOST_PP_ARRAY_REVERSE</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_ARRAY_REVERSE</b> macro reverses the elements in an <i>array</i>.
</div>
<h4>Usage</h4>
<div class="code">
<b>BOOST_PP_ARRAY_REVERSE</b>(<i>array</i>)
</div>
<h4>Arguments</h4>
<dl>
<dt>array</dt>
<dd>
The <i>array</i> whose elements are to be reversed.
</dd>
</dl>
<h4>Requirements</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/array/reverse.hpp.html">&lt;boost/preprocessor/array/reverse.hpp&gt;</a>
</div>
<h4>Sample Code</h4>
<div><pre>
#include &lt;<a href="../headers/array/reverse.hpp.html">boost/preprocessor/array/reverse.hpp</a>&gt;
#define ARRAY (3, (a, b, c))
<a href="array_reverse.html">BOOST_PP_ARRAY_REVERSE</a>(ARRAY) // expands to (3, (c, b, a))
</pre></div>
</body>
</html>

View File

@ -36,8 +36,8 @@
<div><pre>
#include &lt;<a href="../headers/logical/bool.hpp.html">boost/preprocessor/logical/bool.hpp</a>&gt;
<a href="bool.html">BOOST_PP_BOOL</a>(6) // expands to 1
<a href="bool.html">BOOST_PP_BOOL</a>(0) // expands to 0
<a href="bool.hpp">BOOST_PP_BOOL</a>(6) // expands to 1
<a href="bool.hpp">BOOST_PP_BOOL</a>(0) // expands to 0
</pre></div>
</body>
</html>

View File

@ -1,43 +1,33 @@
<html>
<head>
<title>BOOST_PP_CONFIG_EXTENDED_LINE_INFO</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_CONFIG_EXTENDED_LINE_INFO</b> is a user-defined macro that
determines whether <b>BOOST_PP_LINE</b> outputs extended <i>file-iteration</i> state
information.
</div>
<h4>
Usage
</h4>
<head>
<title>BOOST_PP_CONFIG_EXTENDED_LINE_INFO</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_CONFIG_EXTENDED_LINE_INFO</b> is a user-defined macro that determines whether <b>BOOST_PP_LINE</b> outputs extended <i>file-iteration</i> state information.
</div>
<h4>Usage</h4>
<div class="code">
#define <b>BOOST_PP_CONFIG_EXTENDED_LINE_INFO</b> <i>n</i>
</div>
<h4>
Arguments
</h4>
<h4>Arguments</h4>
<dl>
<dt>n</dt>
<dd>
The value that determines if <b>BOOST_PP_LINE</b> outputs extended <i>file-iteration</i>
information.&nbsp; This value must be <i>0</i> or <i>1</i>.
The value that determines if <b>BOOST_PP_LINE</b> outputs extended <i>file-iteration</i> information.&nbsp;
This value must be <i>0</i> or <i>1</i>.
</dd>
</dl>
<h4>
Remarks
</h4>
<h4>Remarks</h4>
<div>
If <i>n</i> is <i>1</i>, <b>BOOST_PP_LINE</b> will output extended data.&nbsp;
If <i>n</i> is <i>1</i>, <b>BOOST_PP_LINE</b> will output extended data.&nbsp;
By default, this macro is set to <i>0</i>.
</div>
<h4>
See Also
</h4>
<h4>See Also</h4>
<ul>
<li>
<a href="line.html">BOOST_PP_LINE</a></li>
<li><a href="line.html">BOOST_PP_LINE</a></li>
</ul>
</body>
</body>
</html>

View File

@ -39,8 +39,8 @@
</div>
<h4>Sample Code</h4>
<div><pre>
#include &lt;<a href="../headers/logical/and.hpp.html">boost/preprocessor/logical/and.hpp</a>&gt;
#include &lt;<a href="../headers/control/expr_iif.hpp.html">boost/preprocessor/control/expr_iif.hpp</a>&gt;
#include &lt;<a href="../headers/comparison/and.hpp.html">boost/preprocessor/comparison/and.hpp</a>&gt;
#include &lt;<a href="../headers/control/expr_iif.hpp">boost/preprocessor/control/expr_iif.hpp</a>&gt;
#define INSERT_AND(p, q, text) \
<a href="expr_iif.html">BOOST_PP_EXPR_IIF</a>( \

View File

@ -27,9 +27,9 @@
#ifndef FILE_H_
#define FILE_H_
#include &lt;<a href="../headers/iteration/iterate.hpp.html">boost/preprocessor/iteration/iterate.hpp</a>&gt;
#include &lt;<a href="../headers/iteration/iterate.hpp,html">boost/preprocessor/iteration/iterate.hpp</a>&gt;
#define <a href="iteration_params_x.html">BOOST_PP_ITERATION_PARAMS_1</a> (3, (1, 3, "file.h"))
#define <a href="iterations_params_x.html">BOOST_PP_ITERATION_PARAMS_1</a> (3, (1, 3, "file.h"))
#include <a href="iterate.html">BOOST_PP_ITERATE</a>()
#endif

View File

@ -1,30 +0,0 @@
<html>
<head>
<title>BOOST_PP_LIMIT_SEQ</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_LIMIT_SEQ</b> macro defines the maximum <i>seq</i> size
supported by the library.
</div>
<h4>
Usage
</h4>
<div class="code">
<b>BOOST_PP_LIMIT_SEQ</b>
</div>
<h4>
Remarks
</h4>
<div>
This macro currently expands to <i>256</i>.
</div>
<h4>
Requirements
</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/config/limits.hpp.html">&lt;boost/preprocessor/config/limits.hpp&gt;</a>
</div>
</body>
</html>

View File

@ -45,7 +45,7 @@
((a, (b, <a href="nil.html">BOOST_PP_NIL</a>)), \
((d, (e, <a href="nil.html">BOOST_PP_NIL</a>)), \
((e, (f, <a href="nil.html">BOOST_PP_NIL</a>)), \
<a href="nil.html">BOOST_PP_NIL</a>))) \
<a href="ni.html">BOOST_PP_NIL</a>))) \
/**/
#define OP(d, state, x) <a href="cat.html">BOOST_PP_CAT</a>(state, <a href="list_cat_d.html">BOOST_PP_LIST_CAT_D</a>(d, x))

View File

@ -59,7 +59,7 @@
#define PRED(d, data, elem) <a href="less_equal.html">BOOST_PP_LESS_EQUAL</a>(elem, data)
<a href="list_filter.html">BOOST_PP_LIST_FILTER</a>(PRED, 3, LIST)
// expands to (1, (3, (2, <a href="nil.html">BOOST_PP_NIL</a>)))
// expands to (1, (3, (2, <a href="ni.html">BOOST_PP_NIL</a>)))
</pre></div>
</body>
</html>

View File

@ -56,7 +56,7 @@
<h4>Sample Code</h4>
<div><pre>
#include &lt;<a href="../headers/cat.hpp.html">boost/preprocessor/cat.hpp</a>&gt;
#include &lt;<a href="../headers/list/fold_right.hpp.html">boost/preprocessor/list/fold_right.hpp</a>&gt;
#include &lt;<a href="../headers/list/fold_right.html">boost/preprocessor/list/fold_right.hpp</a>&gt;
#define LIST (a, (b, (c, <a href="nil.html">BOOST_PP_NIL</a>)))

View File

@ -16,7 +16,7 @@
<dt>macro</dt>
<dd>
A macro of the form <i>macro</i>(<i>r</i>, <i>data</i>, <i>i</i>, <i>elem</i>).&nbsp;
This macro is expanded by <b>BOOST_PP_LIST_FOR_EACH_I</b> with each element in <i>list</i>.&nbsp;
This macro is expanded by <b>BOOST_PP_LIST_FOR_EACH</b> with each element in <i>list</i>.&nbsp;
It is expanded with the next available <b>BOOST_PP_FOR</b> repetition, the auxiliary <i>data</i>, the index of the current element, and the current element.
</dd>
<dt>data</dt>

View File

@ -53,7 +53,7 @@
<div><pre>
#include &lt;<a href="../headers/cat.hpp.html">boost/preprocessor/cat.hpp</a>&gt;
#include &lt;<a href="../headers/list/adt.hpp.html">boost/preprocessor/list/adt.hpp</a>&gt;
#include &lt;<a href="../headers/list/for_each_i.hpp.html">boost/preprocessor/list/for_each_i.hpp</a>&gt;
#include &lt;<a href="../headers/list/list_for_each_i.html">boost/preprocessor/list/for_each_i.hpp</a>&gt;
#include &lt;<a href="../headers/repetition/for.hpp.html">boost/preprocessor/repetition/for.hpp</a>&gt;
#define LIST (x, (y, (z, <a href="nil.html">BOOST_PP_NIL</a>)))

View File

@ -44,8 +44,8 @@
</div>
<h4>Sample Code</h4>
<div><pre>
#include &lt;<a href="../headers/list/fold_left.hpp.html">boost/preprocessor/list/fold_left.hpp</a>&gt;
#include &lt;<a href="../headers/selection/min.hpp.html">boost/preprocessor/selection/min.hpp</a>&gt;
#include &lt;<a href="../list/fold_left.hpp.html">boost/preprocessor/list/fold_left.hpp</a>&gt;
#include &lt;<a href="../selection/min.hpp.html">boost/preprocessor/selection/min.hpp</a>&gt;
#define LIST (1, (3, (5, (2, (4, <a href="nil.html">BOOST_PP_NIL</a>)))))

View File

@ -21,7 +21,7 @@
</dl>
<h4>Remarks</h4>
<div>
If <i>x</i> is zero, this macro expands to <i>1</i>.&nbsp;
If <i>x</i> is non-zero, this macro expands to <i>1</i>.&nbsp;
Otherwise, it expands to <i>0</i>.
</div>
<div>

View File

@ -1,60 +0,0 @@
<html>
<head>
<title>BOOST_PP_SEQ_CAT</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</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>)
</div>
<h4>
Arguments
</h4>
<dl>
<dt>seq</dt>
<dd>
The <i>seq</i> whose elements are to be concatenated.
</dd>
</dl>
<h4>
Remarks
</h4>
<div>
Elements are concatenated left-to-right starting with index <i>0</i>.
</div>
<div>
For maximum efficiency, use <b>BOOST_PP_SEQ_CAT_S</b>.
</div>
<h4>
See Also
</h4>
<ul>
<li>
<a href="seq_cat_s.html">BOOST_PP_SEQ_CAT_S</a></li>
</ul>
<h4>
Requirements
</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/seq/cat.hpp.html">&lt;boost/preprocessor/seq/cat.hpp&gt;</a>
</div>
<h4>
Sample Code
</h4>
<div>
<pre>
#include &lt;<a href="../headers/seq/cat.hpp.html">boost/preprocessor/seq/cat.hpp</a>&gt;
#define SEQ (a)(b)(c)
<a href="seq_cat.html">BOOST_PP_SEQ_CAT</a>(SEQ) // expands to abc
</pre>
</div>
</body>
</html>

View File

@ -1,50 +0,0 @@
<html>
<head>
<title>BOOST_PP_SEQ_CAT_S</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_SEQ_CAT_S</b> macro concatenates all elements in a <i>seq</i>.&nbsp;
It reenters <b>BOOST_PP_SEQ_FOLD_LEFT</b> with maximum efficiency.
</div>
<h4>
Usage
</h4>
<div class="code">
<b>BOOST_PP_SEQ_CAT_S</b>(<i>s</i>, <i>list</i>)
</div>
<h4>
Arguments
</h4>
<dl>
<dt>s</dt>
<dd>
The next available <b>BOOST_PP_SEQ_FOLD_LEFT</b> fold step.
</dd>
<dt>seq</dt>
<dd>
The <i>seq</i> whose elements are to be concatenated.
</dd>
</dl>
<h4>
Remarks
</h4>
<div>
Elements are concatenated left-to-right starting with index <i>0</i>.
</div>
<h4>
See Also
</h4>
<ul>
<li>
<a href="seq_cat.html">BOOST_PP_SEQ_CAT</a></li>
</ul>
<h4>
Requirements
</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/seq/cat.hpp.html">&lt;boost/preprocessor/seq/cat.hpp&gt;</a>
</div>
</body>
</html>

View File

@ -1,68 +0,0 @@
<html>
<head>
<title>BOOST_PP_SEQ_ELEM</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</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>)
</div>
<h4>
Arguments
</h4>
<dl>
<dt>i</dt>
<dd>
The zero-based index of the element to be extracted.
</dd>
<dt>seq</dt>
<dd>
The <i>seq</i> from which an element is to be extracted.
</dd>
</dl>
<h4>
Remarks
</h4>
<div>
The index <i>i</i> must be in the range of <i>0</i> to <b>BOOST_PP_SEQ_SIZE</b>(<i>seq</i>)
- <i>1</i>.
</div>
<h4>
Requirements
</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/seq/elem.hpp.html">&lt;boost/preprocessor/seq/elem.hpp&gt;</a>
</div>
<h4>
Sample Code
</h4>
<div>
<pre>
#include &lt;<a href="../headers/seq/elem.hpp.html">boost/preprocessor/seq/elem.hpp</a>&gt;
<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>
</div>
</body>
</html>

View File

@ -1,55 +0,0 @@
<html>
<head>
<title>BOOST_PP_SEQ_ENUM</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_SEQ_ENUM</b> macro enumerates the elements in a <i>seq</i>.
</div>
<h4>
Usage
</h4>
<div class="code">
<b>BOOST_PP_SEQ_ENUM</b>(<i>seq</i>)
</div>
<h4>
Arguments
</h4>
<dl>
<dt>seq</dt>
<dd>
The <i>seq</i> from whose elements are to be enumerated.
</dd>
</dl>
<h4>
Remarks
</h4>
<div>
This macro expands to a comma-separated list of the elements in <i>seq</i>.&nbsp;
For example, <b>BOOST_PP_SEQ_ENUM</b>((<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> &nbsp;<a href="../headers/seq/enum.hpp.html">&lt;boost/preprocessor/seq/enum.hpp&gt;</a>
</div>
<h4>
Sample Code
</h4>
<div>
<pre>
#include &lt;<a href="../headers/seq/enum.hpp.html">boost/preprocessor/seq/enum.hpp</a>&gt;
#define SEQ (B)(O)(O)(S)(T)
<a href="seq_enum.html">BOOST_PP_SEQ_ENUM</a>(SEQ) // expands to B, O, O, S, T
</pre>
</div>
</body>
</html>

View File

@ -1,82 +0,0 @@
<html>
<head>
<title>BOOST_PP_SEQ_FILTER</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_SEQ_FILTER</b> macro filters a <i>seq</i> according to a
supplied criterion.
</div>
<h4>
Usage
</h4>
<div class="code">
<b>BOOST_PP_SEQ_FILTER</b>(<i>pred</i>, <i>data</i>, <i>seq</i>)
</div>
<h4>
Arguments
</h4>
<dl>
<dt>pred</dt>
<dd>
A ternary predicate of the form <i>pred</i>(<i>s</i>, <i>data</i>, <i>elem</i>).&nbsp;
This predicate is expanded by <b>BOOST_PP_SEQ_FILTER</b> for each element in <i>seq</i>
with the next available <b>BOOST_PP_SEQ_FOLD_LEFT</b> fold step, the auxiliary <i>data</i>,
and the current element in <i>seq</i>.&nbsp; This macro must return a integral
value in the range of <i>0</i> to <b>BOOST_PP_LIMIT_MAG</b>.&nbsp; If this
predicate expands to non-zero for a certain element, that element is included
in the resulting <i>seq</i>.
</dd>
<dt>data</dt>
<dd>
Auxiliary data passed to <i>pred</i>.
</dd>
<dt>seq</dt>
<dd>
The <i>seq</i> to be filtered.
</dd>
</dl>
<h4>
Remarks
</h4>
<div>
This macro expands <i>pred</i> for each element in <i>seq</i>.&nbsp; It builds
a new <i>seq</i> out of each element for which <i>pred</i> returns non-zero.
</div>
<div>
For maximum efficiency, use <b>BOOST_PP_SEQ_FILTER_S</b>.
</div>
<h4>
See Also
</h4>
<ul>
<li>
<a href="limit_mag.html">BOOST_PP_LIMIT_MAG</a></li>
<li>
<a href="seq_filter_s.html">BOOST_PP_SEQ_FILTER_S</a></li>
</ul>
<h4>
Requirements
</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/seq/filter.hpp.html">&lt;boost/preprocessor/seq/filter.hpp&gt;</a>
</div>
<h4>
Sample Code
</h4>
<div>
<pre>
#include &lt;<a href="../headers/comparison/less_equal.hpp.html">boost/preprocessor/comparison/less_equal.hpp</a>&gt;
#include &lt;<a href="../headers/seq/filter.hpp.html">boost/preprocessor/seq/filter.hpp</a>&gt;
#define SEQ (1)(3)(2)(5)
#define PRED(s, data, elem) <a href="less_equal.html">BOOST_PP_LESS_EQUAL</a>(elem, data)
<a href="seq_filter.html">BOOST_PP_SEQ_FILTER</a>(PRED, 3, SEQ)
// expands to (1)(3)(2)
</pre>
</div>
</body>
</html>

View File

@ -1,68 +0,0 @@
<html>
<head>
<title>BOOST_PP_SEQ_FILTER_S</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_SEQ_FILTER_S</b> macro filters a <i>seq</i> according to a
supplied criterion.&nbsp; It reenters <b>BOOST_PP_SEQ_FOLD_LEFT</b> with
maximum efficiency.
</div>
<h4>
Usage
</h4>
<div class="code">
<b>BOOST_PP_SEQ_FILTER_S</b>(<i>s</i>, <i>pred</i>, <i>data</i>, <i>seq</i>)
</div>
<h4>
Arguments
</h4>
<dl>
<dt>s</dt>
<dd>
The next available <b>BOOST_PP_SEQ_FOLD_LEFT</b> fold step.
</dd>
<dt>pred</dt>
<dd>
A ternary predicate of the form <i>pred</i>(<i>s</i>, <i>data</i>, <i>elem</i>).&nbsp;
This predicate is expanded by <b>BOOST_PP_SEQ_FILTER</b> for each element in <i>seq</i>
with the next available <b>BOOST_PP_SEQ_FOLD_LEFT</b> fold step, the auxiliary <i>data</i>,
and the current element in <i>seq</i>.&nbsp; This macro must return a integral
value in the range of <i>0</i> to <b>BOOST_PP_LIMIT_MAG</b>.&nbsp; If this
predicate expands to non-zero for a certain element, that element is included
in the resulting <i>seq</i>.
</dd>
<dt>data</dt>
<dd>
Auxiliary data passed to <i>pred</i>.
</dd>
<dt>seq</dt>
<dd>
The <i>seq</i> to be filtered.
</dd>
</dl>
<h4>
Remarks
</h4>
<div>
This macro expands <i>pred</i> for each element in <i>seq</i>.&nbsp; It builds
a new <i>seq</i> out of each element for which <i>pred</i> returns non-zero.
</div>
<h4>
See Also
</h4>
<ul>
<li>
<a href="limit_mag.html">BOOST_PP_LIMIT_MAG</a></li>
<li>
<a href="seq_filter.html">BOOST_PP_SEQ_FILTER</a></li>
</ul>
<h4>
Requirements
</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/seq/filter.hpp.html">&lt;boost/preprocessor/seq/filter.hpp&gt;</a>
</div>
</body>
</html>

View File

@ -1,63 +0,0 @@
<html>
<head>
<title>BOOST_PP_SEQ_FIRST_N</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</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>
<h4>
Usage
</h4>
<div class="code">
<b>BOOST_PP_SEQ_FIRST_N</b>(<i>n</i>, <i>list</i>)
</div>
<h4>
Arguments
</h4>
<dl>
<dt>n</dt>
<dd>
The number of elements to extract.
</dd>
<dt>list</dt>
<dd>
The <i>seq</i> from which the elements are extracted.
</dd>
</dl>
<h4>
Remarks
</h4>
<div>
This macro extracts <i>n</i> elements from the beginning of <i>seq</i> and
returns them as a new <i>seq</i>
</div>
<h4>
See Also
</h4>
<ul>
<li>
<a href="seq_rest_n.html">BOOST_PP_SEQ_REST_N</a></li>
</ul>
<h4>
Requirements
</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/seq/first_n.hpp.html">&lt;boost/preprocessor/seq/first_n.hpp&gt;</a>
</div>
<h4>
Sample Code
</h4>
<div>
<pre>
#include &lt;<a href="../headers/seq/first_n.hpp.html">boost/preprocessor/seq/first_n.hpp</a>&gt;
#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>
</div>
</body>
</html>

View File

@ -1,79 +0,0 @@
<html>
<head>
<title>BOOST_PP_SEQ_FOLD_LEFT</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_SEQ_FOLD_LEFT</b> macro folds (or accumulates) the elements of
a <i>seq</i> left-to-right.
</div>
<h4>
Usage
</h4>
<div class="code">
<b>BOOST_PP_SEQ_FOLD_LEFT</b>(<i>op</i>, <i>state</i>, <i>seq</i>)
</div>
<h4>
Arguments
</h4>
<dl>
<dt>op</dt>
<dd>
A ternary operation of the form <i>op</i>(<i>s</i>, <i>state</i>, <i>elem</i>).&nbsp;
This macro is called for each element in <i>seq</i>--each time returning a new <i>state</i>.&nbsp;
This operation is expanded by <b>BOOST_PP_SEQ_FOLD_LEFT</b> with the next
available fold step, the current <i>state</i>, and the current element.
</dd>
<dt>state</dt>
<dd>
The initial state of the fold.
</dd>
<dt>seq</dt>
<dd>
The <i>seq</i> to be folded.
</dd>
</dl>
<h4>
Remarks
</h4>
<div>
For the <i>seq</i>, (<i>0</i>)(<i>1</i>)(<i>2</i>), this macro expands to:
<div>
<i>op</i>(<i>s</i>, <i>op</i>(<i>s</i>, <i>op</i>(<i>s</i>, <i>state</i>, <i>0</i>),
<i>1</i>), <i>2</i>)
</div>
</div>
<div>
For maximum efficiency, <b>BOOST_PP_SEQ_FOLD_LEFT</b> can be reentered with <b>BOOST_PP_SEQ_FOLD_LEFT_<i>s</i></b>.
</div>
<h4>
See Also
</h4>
<ul>
<li>
<a href="seq_fold_left_s.html">BOOST_PP_SEQ_FOLD_LEFT_<i>s</i></a></li>
</ul>
<h4>
Requirements
</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/seq/fold_left.hpp.html">&lt;boost/preprocessor/seq/fold_left.hpp&gt;</a>
</div>
<h4>
Sample Code
</h4>
<div>
<pre>
#include &lt;<a href="../headers/cat.hpp.html">boost/preprocessor/cat.hpp</a>&gt;
#include &lt;<a href="../headers/seq/fold_left.hpp.html">boost/preprocessor/seq/fold_left.hpp</a>&gt;
#define SEQ (b)(o)(o)(s)(t)
#define OP(s, state, x) <a href="cat.html">BOOST_PP_CAT</a>(state, x)
<a href="seq_fold_left.html">BOOST_PP_SEQ_FOLD_LEFT</a>(OP, <a href="seq_head.html">BOOST_PP_SEQ_HEAD</a>(SEQ), <a href="seq_tail.html">BOOST_PP_SEQ_TAIL</a>(SEQ)) // expands to boost
</pre>
</div>
</body>
</html>

View File

@ -1,85 +0,0 @@
<html>
<head>
<title>BOOST_PP_SEQ_FOLD_LEFT_s</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_SEQ_FOLD_LEFT_<i>s</i></b> macro folds (or accumulates) the
elements of a <i>seq</i> left-to-right.&nbsp; It reenters <b>BOOST_PP_SEQ_FOLD_LEFT</b>
with maximum efficiency.
</div>
<h4>
Usage
</h4>
<div class="code">
<b>BOOST_PP_SEQ_FOLD_LEFT_</b> ## <i>s</i>(<i>op</i>, <i>state</i>, <i>seq</i>)
</div>
<h4>
Arguments
</h4>
<dl>
<dt>s</dt>
<dd>
The next available <b>BOOST_PP_SEQ_FOLD_LEFT</b> fold step.
</dd>
<dt>op</dt>
<dd>
A ternary operation of the form <i>op</i>(<i>s</i>, <i>state</i>, <i>elem</i>).&nbsp;
This macro is called for each element in <i>seq</i>--each time returning a new <i>state</i>.&nbsp;
This operation is expanded by <b>BOOST_PP_SEQ_FOLD_LEFT</b> with the next
available fold step, the current <i>state</i>, and the current element.
</dd>
<dt>state</dt>
<dd>
The initial state of the fold.
</dd>
<dt>seq</dt>
<dd>
The <i>seq</i> to be folded.
</dd>
</dl>
<h4>
Remarks
</h4>
<div>
For the <i>seq</i>, (<i>0</i>)(<i>1</i>)(<i>2</i>), this macro expands to:
<div>
<i>op</i>(<i>s</i>, <i>op</i>(<i>s</i>, <i>op</i>(<i>s</i>, <i>state</i>, <i>0</i>),
<i>1</i>), <i>2</i>)
</div>
</div>
<h4>
See Also
</h4>
<ul>
<li>
<a href="seq_fold_left.html">BOOST_PP_SEQ_FOLD_LEFT</a></li>
</ul>
<h4>
Requirements
</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/seq/fold_left.hpp.html">&lt;boost/preprocessor/seq/fold_left.hpp&gt;</a>
</div>
<h4>
Sample Code
</h4>
<div>
<pre>
#include &lt;<a href="../headers/cat.hpp.html">boost/preprocessor/cat.hpp</a>&gt;
#include &lt;<a href="../headers/seq/fold_left.hpp.html">boost/preprocessor/seq/fold_left.hpp</a>&gt;
#include &lt;<a href="../headers/seq/seq.hpp.html">boost/preprocessor/seq/seq.hpp</a>&gt;
#define S1 (a)(b)(c)
#define S2 (S1)(S1)(S1)
#define OP(s, state, x) state (<a href="seq_fold_left_s.html">BOOST_PP_SEQ_FOLD_LEFT_</a> ## s(OP_2, _, x))
#define OP_2(s, state, x) <a href="cat.html">BOOST_PP_CAT</a>(state, x)
<a href="seq_fold_left.html">BOOST_PP_SEQ_FOLD_LEFT</a>(OP, <a href="seq_nil.html">BOOST_PP_SEQ_NIL</a>, S2)
// expands to (_abc)(_abc)(_abc)
</pre>
</div>
</body>
</html>

View File

@ -1,81 +0,0 @@
<html>
<head>
<title>BOOST_PP_SEQ_FOLD_RIGHT</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_SEQ_FOLD_RIGHT</b> macro folds (or accumulates) the elements of
a <i>seq</i> right-to-left.
</div>
<h4>
Usage
</h4>
<div class="code">
<b>BOOST_PP_SEQ_FOLD_RIGHT</b>(<i>op</i>, <i>state</i>, <i>seq</i>)
</div>
<h4>
Arguments
</h4>
<dl>
<dt>op</dt>
<dd>
A ternary operation of the form <i>op</i>(<i>s</i>, <i>state</i>, <i>elem</i>).&nbsp;
This macro is called for each element in <i>seq</i>--each time returning a new <i>state</i>.&nbsp;
This operation is expanded by <b>BOOST_PP_SEQ_FOLD_RIGHT</b> with the next
available fold step, the current <i>state</i>, and the current element.
</dd>
<dt>state</dt>
<dd>
The initial state of the fold.
</dd>
<dt>seq</dt>
<dd>
The <i>seq</i> to be folded.
</dd>
</dl>
<h4>
Remarks
</h4>
<div>
For the <i>seq</i>, (<i>0</i>)(<i>1</i>)(<i>2</i>), this macro expands to:
<div>
<i>op</i>(<i>s</i>, <i>op</i>(<i>s</i>, <i>op</i>(<i>s</i>, <i>state</i>, <i>2</i>),
<i>1</i>), <i>0</i>)
</div>
</div>
<div>
For maximum efficiency, <b>BOOST_PP_SEQ_FOLD_RIGHT</b> can be reentered with <b>BOOST_PP_SEQ_FOLD_RIGHT_<i>s</i></b>.
</div>
<h4>
See Also
</h4>
<ul>
<li>
<a href="seq_fold_right_s.html">BOOST_PP_SEQ_FOLD_RIGHT_<i>s</i></a></li>
</ul>
<h4>
Requirements
</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/seq/fold_right.hpp.html">&lt;boost/preprocessor/seq/fold_right.hpp&gt;</a>
</div>
<h4>
Sample Code
</h4>
<div>
<pre>
#include &lt;<a href="../headers/cat.hpp.html">boost/preprocessor/cat.hpp</a>&gt;
#include &lt;<a href="../headers/seq/elem.hpp.html">boost/preprocessor/seq/elem.hpp</a>&gt;
#include &lt;<a href="../headers/seq/fold_right.hpp.html">boost/preprocessor/seq/fold_right.hpp</a>&gt;
#include &lt;<a href="../headers/seq/pop_back.hpp.html">boost/preprocessor/seq/pop_back.hpp</a>&gt;
#define SEQ (t)(s)(o)(o)(b)
#define OP(s, state, x) <a href="cat.html">BOOST_PP_CAT</a>(state, x)
<a href="seq_fold_right.html">BOOST_PP_SEQ_FOLD_RIGHT</a>(OP, <a href="seq_elem.html">BOOST_PP_SEQ_ELEM</a>(4, SEQ), <a href="seq_pop_back.html">BOOST_PP_SEQ_POP_BACK</a>(SEQ)) // expands to boost
</pre>
</div>
</body>
</html>

View File

@ -1,86 +0,0 @@
<html>
<head>
<title>BOOST_PP_SEQ_FOLD_RIGHT_s</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_SEQ_FOLD_RIGHT_<i>s</i></b> macro folds (or accumulates) the
elements of a <i>seq</i> right-to-left.&nbsp; It reenters <b>BOOST_PP_SEQ_FOLD_RIGHT</b>
with maximum efficiency.
</div>
<h4>
Usage
</h4>
<div class="code">
<b>BOOST_PP_SEQ_FOLD_RIGHT_</b> ## <i>s</i>(<i>op</i>, <i>state</i>, <i>seq</i>)
</div>
<h4>
Arguments
</h4>
<dl>
<dt>s</dt>
<dd>
The next available <b>BOOST_PP_SEQ_FOLD_LEFT</b> fold step.
</dd>
<dt>op</dt>
<dd>
A ternary operation of the form <i>op</i>(<i>s</i>, <i>state</i>, <i>elem</i>).&nbsp;
This macro is called for each element in <i>seq</i>--each time returning a new <i>state</i>.&nbsp;
This operation is expanded by <b>BOOST_PP_SEQ_FOLD_RIGHT</b> with the next
available fold step, the current <i>state</i>, and the current element.
</dd>
<dt>state</dt>
<dd>
The initial state of the fold.
</dd>
<dt>seq</dt>
<dd>
The <i>seq</i> to be folded.
</dd>
</dl>
<h4>
Remarks
</h4>
<div>
For the <i>seq</i>, (<i>0</i>)(<i>1</i>)(<i>2</i>), this macro expands to:
<div>
<i>op</i>(<i>s</i>, <i>op</i>(<i>s</i>, <i>op</i>(<i>s</i>, <i>state</i>, <i>2</i>),
<i>1</i>), <i>0</i>)
</div>
</div>
<h4>
See Also
</h4>
<ul>
<li>
<a href="seq_fold_right.html">BOOST_PP_SEQ_FOLD_RIGHT</a></li>
</ul>
<h4>
Requirements
</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/seq/fold_right.hpp.html">&lt;boost/preprocessor/seq/fold_right.hpp&gt;</a>
</div>
<h4>
Sample Code
</h4>
<div>
<pre>
#include &lt;<a href="../headers/cat.hpp.html">boost/preprocessor/cat.hpp</a>&gt;
#include &lt;<a href="../headers/seq/fold_left.hpp.html">boost/preprocessor/seq/fold_left.hpp</a>&gt;
#include &lt;<a href="../headers/seq/fold_right.hpp.html">boost/preprocessor/seq/fold_right.hpp</a>&gt;
#include &lt;<a href="../headers/seq/seq.hpp.html">boost/preprocessor/seq/seq.hpp</a>&gt;
#define S1 (a)(b)(c)
#define S2 (S1)(S1)(S1)
#define OP(s, state, x) state (<a href="seq_fold_left_s.html">BOOST_PP_SEQ_FOLD_RIGHT_</a> ## s(OP_2, _, x))
#define OP_2(s, state, x) <a href="cat.html">BOOST_PP_CAT</a>(state, x)
<a href="seq_fold_left.html">BOOST_PP_SEQ_FOLD_LEFT</a>(OP, <a href="seq_nil.html">BOOST_PP_SEQ_NIL</a>, S2)
// expands to (_cba)(_cba)(_cba)
</pre>
</div>
</body>
</html>

View File

@ -1,79 +0,0 @@
<html>
<head>
<title>BOOST_PP_SEQ_FOR_EACH</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_SEQ_FOR_EACH</b> macro repeats a macro for each element in a <i>seq</i>.
</div>
<h4>
Usage
</h4>
<div class="code">
<b>BOOST_PP_SEQ_FOR_EACH</b>(<i>macro</i>, <i>data</i>, <i>seq</i>)
</div>
<h4>
Arguments
</h4>
<dl>
<dt>macro</dt>
<dd>
A ternary macro of the form <i>macro</i>(<i>r</i>, <i>data</i>, <i>elem</i>).&nbsp;
This macro is expanded by <b>BOOST_PP_SEQ_FOR_EACH</b> with each element in <i>seq</i>.&nbsp;
It is expanded with the next available <b>BOOST_PP_FOR</b> repetition, the
auxiliary <i>data</i>, and the current element.
</dd>
<dt>data</dt>
<dd>
Auxiliary data passed to <i>macro</i>.
</dd>
<dt>seq</dt>
<dd>
The <i>seq</i> for which <i>macro</i> will be invoked on each element.
</dd>
</dl>
<h4>
Remarks
</h4>
<div>
This macro is a repetition construct.&nbsp; If <i>seq</i> is (<i>a</i>)(<i>b</i>)(<i>c</i>),
it expands to the sequence:
<div>
<i>macro</i>(<i>r</i>, <i>data</i>, <i>a</i>) <i>macro</i>(<i>r</i>, <i>data</i>,
<i>b</i>) <i>macro</i>(<i>r</i>, <i>data</i>, <i>c</i>)
</div>
</div>
<div>
For maximum efficiency, use <b>BOOST_PP_SEQ_FOR_EACH_R</b>.
</div>
<h4>
See Also
</h4>
<ul>
<li>
<a href="seq_for_each_r.html">BOOST_PP_SEQ_FOR_EACH_R</a></li>
</ul>
<h4>
Requirements
</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/seq/for_each.hpp.html">&lt;boost/preprocessor/seq/for_each.hpp&gt;</a>
</div>
<h4>
Sample Code
</h4>
<div>
<pre>
#include &lt;<a href="../headers/cat.hpp.html">boost/preprocessor/cat.hpp</a>&gt;
#include &lt;<a href="../headers/seq/for_each.hpp.html">boost/preprocessor/seq/for_each.hpp</a>&gt;
#define SEQ (w)(x)(y)(z)
#define MACRO(r, data, elem) <a href="cat.html">BOOST_PP_CAT</a>(elem, data)
<a href="seq_for_each.html">BOOST_PP_SEQ_FOR_EACH</a>(MACRO, _, SEQ) // expands to w_ x_ y_ z_
</pre>
</div>
</body>
</html>

View File

@ -1,80 +0,0 @@
<html>
<head>
<title>BOOST_PP_SEQ_FOR_EACH_I</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_SEQ_FOR_EACH_I</b> macro repeats a macro for each element in a <i>seq</i>.
</div>
<h4>
Usage
</h4>
<div class="code">
<b>BOOST_PP_SEQ_FOR_EACH_I</b>(<i>macro</i>, <i>data</i>, <i>seq</i>)
</div>
<h4>
Arguments
</h4>
<dl>
<dt>macro</dt>
<dd>
A macro of the form <i>macro</i>(<i>r</i>, <i>data</i>, <i>i</i>, <i>elem</i>).&nbsp;
This macro is expanded by <b>BOOST_PP_SEQ_FOR_EACH_I</b> with each element in <i>seq</i>.&nbsp;
It is expanded with the next available <b>BOOST_PP_FOR</b> repetition, the
auxiliary <i>data</i>, the index of the current element, and the current
element.
</dd>
<dt>data</dt>
<dd>
Auxiliary data passed to <i>macro</i>.
</dd>
<dt>seq</dt>
<dd>
The <i>seq</i> for which <i>macro</i> will be invoked on each element.
</dd>
</dl>
<h4>
Remarks
</h4>
<div>
This macro is a repetition construct.&nbsp; If <i>seq</i> is (<i>a</i>)(<i>b</i>)(<i>c</i>),
it expands to the sequence:
<div>
<i>macro</i>(<i>r</i>, <i>data</i>, <i>0</i>, <i>a</i>) <i>macro</i>(<i>r</i>, <i>data</i>,
<i>1</i>, <i>b</i>) <i>macro</i>(<i>r</i>, <i>data</i>, <i>2</i>, <i>c</i>)
</div>
</div>
<div>
For maximum efficiency, use <b>BOOST_PP_SEQ_FOR_EACH_I_R</a></li>
</div>
<h4>
See Also
</h4>
<ul>
<li>
<a href="seq_for_each_i_r.html">BOOST_PP_SEQ_FOR_EACH_I_R</a></li>
</ul>
<h4>
Requirements
</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/seq/for_each_i.hpp.html">&lt;boost/preprocessor/seq/for_each_i.hpp&gt;</a>
</div>
<h4>
Sample Code
</h4>
<div>
<pre>
#include &lt;<a href="../headers/cat.hpp.html">boost/preprocessor/cat.hpp</a>&gt;
#include &lt;<a href="../headers/seq/for_each_i.hpp.html">boost/preprocessor/seq/for_each_i.hpp</a>&gt;
#define SEQ (a)(b)(c)(d)
#define MACRO(r, data, i, elem) <a href="cat.html">BOOST_PP_CAT</a>(elem, <a href="cat.html">BOOST_PP_CAT</a>(data, i))
<a href="seq_for_each_i.html">BOOST_PP_SEQ_FOR_EACH_I</a>(MACRO, _, SEQ) // expands to a_0 b_1 c_2 d_3
</pre>
</div>
</body>
</html>

View File

@ -1,67 +0,0 @@
<html>
<head>
<title>BOOST_PP_SEQ_FOR_EACH_I_R</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_SEQ_FOR_EACH_I_R</b> macro repeats a macro for each element in
a <i>seq</i>.&nbsp; It reenters <b>BOOST_PP_FOR</b> with maximum efficiency.
</div>
<h4>
Usage
</h4>
<div class="code">
<b>BOOST_PP_SEQ_FOR_EACH_I_R</b>(<i>r</i>, <i>macro</i>, <i>data</i>, <i>seq</i>)
</div>
<h4>
Arguments
</h4>
<dl>
<dt>r</dt>
<dd>
The next available <b>BOOST_PP_FOR</b> repetition.
</dd>
<dt>macro</dt>
<dd>
A macro of the form <i>macro</i>(<i>r</i>, <i>data</i>, <i>i</i>, <i>elem</i>).&nbsp;
This macro is expanded by <b>BOOST_PP_SEQ_FOR_EACH_I</b> with each element in <i>seq</i>.&nbsp;
It is expanded with the next available <b>BOOST_PP_FOR</b> repetition, the
auxiliary <i>data</i>, the index of the current element, and the current
element.
</dd>
<dt>data</dt>
<dd>
Auxiliary data passed to <i>macro</i>.
</dd>
<dt>seq</dt>
<dd>
The <i>seq</i> for which <i>macro</i> will be invoked on each element.
</dd>
</dl>
<h4>
Remarks
</h4>
<div>
This macro is a repetition construct.&nbsp; If <i>seq</i> is (<i>a</i>)(<i>b</i>)(<i>c</i>),
it expands to the sequence:
<div>
<i>macro</i>(<i>r</i>, <i>data</i>, <i>0</i>, <i>a</i>) <i>macro</i>(<i>r</i>, <i>data</i>,
<i>1</i>, <i>b</i>) <i>macro</i>(<i>r</i>, <i>data</i>, <i>2</i>, <i>c</i>)
</div>
</div>
<h4>
See Also
</h4>
<ul>
<li>
<a href="seq_for_each_i.html">BOOST_PP_SEQ_FOR_EACH_I</a></li>
</ul>
<h4>
Requirements
</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/seq/for_each_i.hpp.html">&lt;boost/preprocessor/seq/for_each_i.hpp&gt;</a>
</div>
</body>
</html>

View File

@ -1,89 +0,0 @@
<html>
<head>
<title>BOOST_PP_SEQ_FOR_EACH_PRODUCT</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_SEQ_FOR_EACH_PRODUCT</b> macro repeats a macro for each
cartesian product of several <i>seqs</i>.
</div>
<h4>
Usage
</h4>
<div class="code">
<b>BOOST_PP_SEQ_FOR_EACH_PRODUCT</b>(<i>macro</i>, <i>seqs</i>)
</div>
<h4>
Arguments
</h4>
<dl>
<dt>macro</dt>
<dd>
The binary macro of the form <i>macro</i>(<i>r</i>, <i>product</i>).&nbsp; This
macro is expanded by <b>BOOST_PP_FOR_EACH_PRODUCT</b> with each cartesian
product in <i>seqs</i>.&nbsp; It is expanded with the next available <b>BOOST_PP_FOR</b>
repetition and a <i>seq</i> containing a cartesian product.&nbsp;
</dd>
<dt>seqs</dt>
<dd>
A <i>seq</i> of <i>seqs</i> from which cartesian products are obtained.
</dd>
</dl>
<h4>
Remarks
</h4>
<div>
This macro is a repetition construct.&nbsp; If two <i>seqs</i> are (<i>a</i>)(<i>b</i>)(<i>c</i>)
and (<i>x</i>)(<i>y</i>)(<i>z</i>), this macro will produce the following
sequence:
<div>
<i>macro</i>(<i>r</i>, (<i>a</i>)(<i>x</i>)) <i>macro</i>(<i>r</i>, (<i>a</i>)(<i>y</i>))
<i>macro</i>(<i>r</i>, (<i>a</i>)(<i>z</i>)) \
<br>
<i>macro</i>(<i>r</i>, (<i>b</i>)(<i>x</i>)) <i>macro</i>(<i>r</i>, (<i>b</i>)(<i>y</i>))
<i>macro</i>(<i>r</i>, (<i>b</i>)(<i>z</i>)) \
<br>
<i>macro</i>(<i>r</i>, (<i>c</i>)(<i>x</i>)) <i>macro</i>(<i>r</i>, (<i>c</i>)(<i>y</i>))
<i>macro</i>(<i>r</i>, (<i>c</i>)(<i>z</i>))
</div>
</div>
<div>
For maximum efficiency, use <b>BOOST_PP_SEQ_FOR_EACH_PRODUCT_R</b>.
</div>
<h4>
See Also
</h4>
<ul>
<li>
<a href="seq_for_each_product_r.html">BOOST_PP_SEQ_FOR_EACH_PRODUCT_R</a></li>
</ul>
<h4>
Requirements
</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/seq/for_each_product.hpp.html">&lt;boost/preprocessor/seq/for_each_product.hpp&gt;</a>
</div>
<h4>
Sample Code
</h4>
<div>
<pre>
#include &lt;<a href="../headers/seq/for_each_product.hpp.html">boost/preprocessor/seq/for_each_product.hpp</a>&gt;
#include &lt;<a href="../headers/seq/to_tuple.hpp.html">boost/preprocessor/seq/to_tuple.hpp</a>&gt;
#define S1 (a)(b)(c)
#define S2 (x)(y)(z)
#define S3 (p)(q)
#define MACRO(r, product) <a href="seq_to_tuple.html">BOOST_PP_SEQ_TO_TUPLE</a>(product)
<a href="seq_for_each_product.html">BOOST_PP_SEQ_FOR_EACH_PRODUCT</a>(MACRO, (S1)(S2)(S3))
// expands to:
// (a, x, p) (a, x, q) (a, y, p) (a, y, q) (a, z, p) (a, z, q)
// (b, x, p) (b, x, q) (b, y, p) (b, y, q) (b, z, p) (b, z, q)
// (c, x, p) (c, x, q) (c, y, p) (c, y, q) (c, z, p) (c, z, q)
</pre>
</div>
</body>
</html>

View File

@ -1,70 +0,0 @@
<html>
<head>
<title>BOOST_PP_SEQ_FOR_EACH_PRODUCT_R</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_SEQ_FOR_EACH_PRODUCT_R</b> macro repeats a macro for each
cartesian product of several <i>seqs</i>.&nbsp; It reenters <b>BOOST_PP_FOR</b>
with maximum efficiency.
</div>
<h4>
Usage
</h4>
<div class="code">
<b>BOOST_PP_SEQ_FOR_EACH_PRODUCT_R</b>(<i>r</i>, <i>macro</i>, <i>seqs</i>)
</div>
<h4>
Arguments
</h4>
<dl>
<dt>r</dt>
<dd>
The next available <b>BOOST_PP_FOR</b> repetition.
</dd>
<dt>macro</dt>
<dd>
The binary macro of the form <i>macro</i>(<i>r</i>, <i>product</i>).&nbsp; This
macro is expanded by <b>BOOST_PP_FOR_EACH_PRODUCT</b> with each cartesian
product in <i>seqs</i>.&nbsp; It is expanded with the next available <b>BOOST_PP_FOR</b>
repetition and a <i>seq</i> containing a cartesian product.&nbsp;
</dd>
<dt>seqs</dt>
<dd>
A <i>seq</i> of <i>seqs</i> from which cartesian products are obtained.
</dd>
</dl>
<h4>
Remarks
</h4>
<div>
This macro is a repetition construct.&nbsp; If two <i>seqs</i> are (<i>a</i>)(<i>b</i>)(<i>c</i>)
and (<i>x</i>)(<i>y</i>)(<i>z</i>), this macro will produce the following
sequence:
<div>
<i>macro</i>(<i>r</i>, (<i>a</i>)(<i>x</i>)) <i>macro</i>(<i>r</i>, (<i>a</i>)(<i>y</i>))
<i>macro</i>(<i>r</i>, (<i>a</i>)(<i>z</i>)) \
<br>
<i>macro</i>(<i>r</i>, (<i>b</i>)(<i>x</i>)) <i>macro</i>(<i>r</i>, (<i>b</i>)(<i>y</i>))
<i>macro</i>(<i>r</i>, (<i>b</i>)(<i>z</i>)) \
<br>
<i>macro</i>(<i>r</i>, (<i>c</i>)(<i>x</i>)) <i>macro</i>(<i>r</i>, (<i>c</i>)(<i>y</i>))
<i>macro</i>(<i>r</i>, (<i>c</i>)(<i>z</i>))
</div>
</div>
<h4>
See Also
</h4>
<ul>
<li>
<a href="seq_for_each_product.html">BOOST_PP_SEQ_FOR_EACH_PRODUCT</a></li>
</ul>
<h4>
Requirements
</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/seq/for_each_product.hpp.html">&lt;boost/preprocessor/seq/for_each_product.hpp&gt;</a>
</div>
</body>
</html>

View File

@ -1,66 +0,0 @@
<html>
<head>
<title>BOOST_PP_SEQ_FOR_EACH_R</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_SEQ_FOR_EACH_R</b> macro repeats a macro for each element in a <i>seq</i>.&nbsp;
It reenters <b>BOOST_PP_FOR</b> with maximum efficiency.
</div>
<h4>
Usage
</h4>
<div class="code">
<b>BOOST_PP_SEQ_FOR_EACH_R</b>(<i>r</i>, <i>macro</i>, <i>data</i>, <i>seq</i>)
</div>
<h4>
Arguments
</h4>
<dl>
<dt>r</dt>
<dd>
The next available <b>BOOST_PP_FOR</b> repetition.
</dd>
<dt>macro</dt>
<dd>
A ternary macro of the form <i>macro</i>(<i>r</i>, <i>data</i>, <i>elem</i>).&nbsp;
This macro is expanded by <b>BOOST_PP_SEQ_FOR_EACH</b> with each element in <i>seq</i>.&nbsp;
It is expanded with the next available <b>BOOST_PP_FOR</b> repetition, the
auxiliary <i>data</i>, and the current element.
</dd>
<dt>data</dt>
<dd>
Auxiliary data passed to <i>macro</i>.
</dd>
<dt>seq</dt>
<dd>
The <i>seq</i> for which <i>macro</i> will be invoked on each element.
</dd>
</dl>
<h4>
Remarks
</h4>
<div>
This macro is a repetition construct.&nbsp; If <i>seq</i> is (<i>a</i>)(<i>b</i>)(<i>c</i>),
it expands to the sequence:
<div>
<i>macro</i>(<i>r</i>, <i>data</i>, <i>a</i>) <i>macro</i>(<i>r</i>, <i>data</i>,
<i>b</i>) <i>macro</i>(<i>r</i>, <i>data</i>, <i>c</i>)
</div>
</div>
<h4>
See Also
</h4>
<ul>
<li>
<a href="seq_for_each.html">BOOST_PP_SEQ_FOR_EACH</a></li>
</ul>
<h4>
Requirements
</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/seq/for_each.hpp.html">&lt;boost/preprocessor/seq/for_each.hpp&gt;</a>
</div>
</body>
</html>

View File

@ -1,52 +0,0 @@
<html>
<head>
<title>BOOST_PP_SEQ_HEAD</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_SEQ_HEAD</b> macro expands to the first element in a <i>seq</i>.
</div>
<h4>
Usage
</h4>
<div class="code">
<b>BOOST_PP_SEQ_HEAD</b>(<i>seq</i>)
</div>
<h4>
Arguments
</h4>
<dl>
<dt>seq</dt>
<dd>
The <i>seq</i> from which the first element is extracted.
</dd>
</dl>
<h4>
See Also
</h4>
<ul>
<li>
<a href="seq_tail.html">BOOST_PP_SEQ_TAIL</a></li>
</ul>
<h4>
Requirements
</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/seq/seq.hpp.html">&lt;boost/preprocessor/seq/seq.hpp&gt;</a>
</div>
<h4>
Sample Code
</h4>
<div>
<pre>
#include &lt;<a href="../headers/seq/seq.hpp.html">boost/preprocessor/seq/seq.hpp</a>&gt;
#define SEQ (a)(b)(c)
<a href="seq_head.html">BOOST_PP_SEQ_HEAD</a>(SEQ) // expands to a
<a href="seq_tail.html">BOOST_PP_SEQ_TAIL</a>(SEQ) // expands to (b)(c)
</pre>
</div>
</body>
</html>

View File

@ -1,59 +0,0 @@
<html>
<head>
<title>BOOST_PP_SEQ_INSERT</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_SEQ_INSERT</b> macro inserts an element into an <i>seq</i>.
</div>
<h4>
Usage
</h4>
<div class="code">
<b>BOOST_PP_SEQ_INSERT</b>(<i>seq</i>, <i>i</i>, <i>elem</i>)
</div>
<h4>
Arguments
</h4>
<dl>
<dt>seq</dt>
<dd>
The <i>seq</i> into which an element is to be inserted.
</dd>
<dt>i</dt>
<dd>
The zero-based position in <i>seq</i> where an element is to be inserted.&nbsp;
Valid values range from <i>0</i> to <b>BOOST_PP_SEQ_SIZE</b>(<i>seq</i>) - <i>1</i>.
</dd>
<dt>elem</dt>
<dd>
The element to insert.
</dd>
</dl>
<h4>
Remarks
</h4>
<div>
This macro inserts <i>elem</i> before the element at index <i>i</i>.
</div>
<h4>
Requirements
</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/seq/insert.hpp.html">&lt;boost/preprocessor/seq/insert.hpp&gt;</a>
</div>
<h4>
Sample Code
</h4>
<div>
<pre>
#include &lt;<a href="../headers/seq/insert.hpp.html">boost/preprocessor/seq/insert.hpp</a>&gt;
#define SEQ (a)(b)(d)
<a href="seq_insert.html">BOOST_PP_SEQ_INSERT</a>(SEQ, 2, c) // expands to (a)(b)(c)(d)
</pre>
</div>
</body>
</html>

View File

@ -1,89 +0,0 @@
<html>
<head>
<title>BOOST_PP_SEQ_NIL</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</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>.&nbsp;
It is only valid if it is elements are appended to the end of this empty
"seq."&nbsp;
</div>
<h4>
Usage
</h4>
<div class="code">
<b>BOOST_PP_SEQ_NIL</b>
</div>
<h4>
Remarks
</h4>
<div>
This macro is a utility macro intended as a empty starting point for appending
to the tail.&nbsp; It is <i>not</i> a nil <i>seq</i>.&nbsp; When an element is
appended to this macro, it expands on the element and to the element--thereby
removing itself.&nbsp; For example, both <b>BOOST_PP_SEQ_NIL</b>(<i>x</i>) and <b>BOOST_PP_SEQ_PUSH_BACK</b>(<b>BOOST_PP_SEQ_NIL</b>,
<i>x</i>) expand to <i>x</i>.
</div>
<div>
If any <b>BOOST_PP_SEQ_</b>* macro (other than <b>BOOST_PP_SEQ_PUSH_BACK</b>)
is invoked with an argument that contains <b>BOOST_PP_SEQ_NIL</b>, the behavior
is undefined and in most cases will result in obscure errors.
</div>
<div>
The closest thing available to <b>BOOST_PP_SEQ_NIL</b> for appending to the
head is <b>BOOST_PP_EMPTY</b>.&nbsp; After all the elements have been
prepended, empty parenthesis can be invoked on the tail to remove the <b>BOOST_PP_EMPTY</b>.&nbsp;
As with <b>BOOST_PP_SEQ_NIL</b>, passing an argument that contains <b>BOOST_PP_EMPTY</b>
to any <b>BOOST_PP_SEQ_</b>* macro (other than <b>BOOST_PP_SEQ_PUSH_FRONT</b>)
is undefined.&nbsp;
</div>
<div>
(It is also possible to start with an extra element and pop it off when you
have finished appending to it.)
</div>
<div>
In C99, neither of these macros are necessary since it is legal to pass empty
arguments.
</div>
<h4>
See Also
</h4>
<ul>
<li>
<a href="empty.html">BOOST_PP_EMPTY</a></li>
</ul>
<h4>
Requirements
</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/seq/seq.hpp.html">&lt;boost/preprocessor/seq/seq.hpp&gt;</a>
</div>
<h4>
Sample Code
</h4>
<div>
<pre>
#include &lt;<a href="../headers/facilities/empty.hpp.html">boost/preprocessor/facilities/empty.hpp</a>&gt;
#include &lt;<a href="../headers/seq/push_back.hpp.html">boost/preprocessor/seq/push_back.hpp</a>&gt;
#include &lt;<a href="../headers/seq/push_front.hpp.html">boost/preprocessor/seq/push_front.hpp</a>&gt;
#include &lt;<a href="../headers/seq/seq.hpp.html">boost/preprocessor/seq/seq.hpp</a>&gt;
#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>
</div>
</body>
</html>

View File

@ -1,57 +0,0 @@
<html>
<head>
<title>BOOST_PP_SEQ_POP_BACK</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_SEQ_POP_BACK</b> macro pops an element from the end of a <i>seq</i>.
</div>
<h4>
Usage
</h4>
<div class="code">
<b>BOOST_PP_SEQ_POP_BACK</b>(<i>seq</i>)
</div>
<h4>
Arguments
</h4>
<dl>
<dt>seq</dt>
<dd>
The <i>seq</i> to pop an element from.
</dd>
</dl>
<h4>
Remarks
</h4>
<div>
This macro returns <i>seq</i> after removing the last element.&nbsp;
</div>
<h4>
See Also
</h4>
<ul>
<li>
<a href="seq_pop_front.html">BOOST_PP_SEQ_POP_FRONT</a></li>
</ul>
<h4>
Requirements
</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/seq/pop_back.hpp.html">&lt;boost/preprocessor/seq/pop_back.hpp&gt;</a>
</div>
<h4>
Sample Code
</h4>
<div>
<pre>
#include &lt;<a href="../headers/seq/pop_back.hpp.html">boost/preprocessor/seq/pop_back.hpp</a>&gt;
#define SEQ (a)(b)(c)
<a href="seq_pop_back.html">BOOST_PP_SEQ_POP_BACK</a>(SEQ) // expands to (a)(b)
</pre>
</div>
</body>
</html>

View File

@ -1,57 +0,0 @@
<html>
<head>
<title>BOOST_PP_SEQ_POP_FRONT</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_SEQ_POP_FRONT</b> macro pops an element from the beginning of a <i>seq</i>.
</div>
<h4>
Usage
</h4>
<div class="code">
<b>BOOST_PP_SEQ_POP_FRONT</b>(<i>seq</i>)
</div>
<h4>
Arguments
</h4>
<dl>
<dt>seq</dt>
<dd>
The <i>seq</i> to pop an element from.
</dd>
</dl>
<h4>
Remarks
</h4>
<div>
This macro returns <i>seq</i> after removing the first element.&nbsp;
</div>
<h4>
See Also
</h4>
<ul>
<li>
<a href="seq_pop_back.html">BOOST_PP_SEQ_POP_BACK</a></li>
</ul>
<h4>
Requirements
</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/seq/pop_front.hpp.html">&lt;boost/preprocessor/seq/pop_front.hpp&gt;</a>
</div>
<h4>
Sample Code
</h4>
<div>
<pre>
#include &lt;<a href="../headers/seq/pop_front.hpp.html">boost/preprocessor/seq/pop_front.hpp</a>&gt;
#define SEQ (a)(b)(c)
<a href="seq_pop_front.html">BOOST_PP_SEQ_POP_FRONT</a>(SEQ) // expands to (b)(c)
</pre>
</div>
</body>
</html>

View File

@ -1,65 +0,0 @@
<html>
<head>
<title>BOOST_PP_SEQ_PUSH_BACK</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_SEQ_PUSH_BACK</b> macro pushes an element onto the end of a <i>seq</i>.
</div>
<h4>
Usage
</h4>
<div class="code">
<b>BOOST_PP_SEQ_PUSH_BACK</b>(<i>seq</i>, <i>elem</i>)
</div>
<h4>
Arguments
</h4>
<dl>
<dt>seq</dt>
<dd>
The <i>seq</i> onto which <i>elem</i> is pushed.
</dd>
<dt>elem</dt>
<dd>
The element to push onto the end of <i>seq</i>.
</dd>
</dl>
<h4>
Remarks
</h4>
<div>
This macro returns <i>seq</i> after appending <i>elem</i>.&nbsp;
</div>
<div>
This macro is an explicit form of directly appending an element.&nbsp; In other
words, <b>BOOST_PP_SEQ_PUSH_BACK</b>(<i>seq</i>, <i>x</i>) is equivalent to <i>seq</i>(<i>x</i>).
</div>
<h4>
See Also
</h4>
<ul>
<li>
<a href="seq_push_front.html">BOOST_PP_SEQ_PUSH_FRONT</a></li>
</ul>
<h4>
Requirements
</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/seq/push_back.hpp.html">&lt;boost/preprocessor/seq/push_back.hpp&gt;</a>
</div>
<h4>
Sample Code
</h4>
<div>
<pre>
#include &lt;<a href="../headers/seq/push_back.hpp.html">boost/preprocessor/seq/push_back.hpp</a>&gt;
#define SEQ (a)(b)
<a href="seq_push_back.html">BOOST_PP_SEQ_PUSH_BACK</a>(SEQ, c) // expands to (a)(b)(c)
</pre>
</div>
</body>
</html>

View File

@ -1,67 +0,0 @@
<html>
<head>
<title>BOOST_PP_SEQ_PUSH_FRONT</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_SEQ_PUSH_FRONT</b> macro pushes an element onto the beginning
of a <i>seq</i>.
</div>
<h4>
Usage
</h4>
<div class="code">
<b>BOOST_PP_SEQ_PUSH_FRONT</b>(<i>seq</i>, <i>elem</i>)
</div>
<h4>
Arguments
</h4>
<dl>
<dt>seq</dt>
<dd>
The <i>seq</i> onto which <i>elem</i> is pushed.
</dd>
<dt>elem</dt>
<dd>
The element to push onto the beginning of <i>seq</i>.
</dd>
</dl>
<h4>
Remarks
</h4>
<div>
This macro returns <i>seq</i> after prepending <i>elem</i>.&nbsp;
</div>
<div>
This macro is an explicit form of directly prepending an element.&nbsp; In
other words, <b>BOOST_PP_SEQ_PUSH_FRONT</b>(<i>seq</i>, <i>x</i>) is equivalent
to (<i>x</i>)<i>seq</i>.
</div>
<h4>
See Also
</h4>
<ul>
<li>
<a href="seq_push_back.html">BOOST_PP_SEQ_PUSH_BACK</a></li>
</ul>
<h4>
Requirements
</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/seq/push_front.hpp.html">&lt;boost/preprocessor/seq/push_front.hpp&gt;</a>
</div>
<h4>
Sample Code
</h4>
<div>
<pre>
#include &lt;<a href="../headers/seq/push_front.hpp.html">boost/preprocessor/seq/push_front.hpp</a>&gt;
#define SEQ (b)(c)
<a href="seq_push_front.html">BOOST_PP_SEQ_PUSH_FRONT</a>(SEQ, a) // expands to (a)(b)(c)
</pre>
</div>
</body>
</html>

View File

@ -1,55 +0,0 @@
<html>
<head>
<title>BOOST_PP_SEQ_REMOVE</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_SEQ_REMOVE</b> macro removes an element from a <i>seq</i>.
</div>
<h4>
Usage
</h4>
<div class="code">
<b>BOOST_PP_SEQ_REMOVE</b>(<i>seq</i>, <i>i</i>)
</div>
<h4>
Arguments
</h4>
<dl>
<dt>seq</dt>
<dd>
The <i>seq</i> from which an element is to be removed.
</dd>
<dt>i</dt>
<dd>
The zero-based position in <i>seq</i> of the element to be removed.&nbsp; Valid
values range from <i>0</i> to <b>BOOST_PP_SEQ_SIZE</b>(<i>seq</i>) - <i>1</i>.
</dd>
</dl>
<h4>
Remarks
</h4>
<div>
This macro returns <i>seq</i> after removing the element at index <i>i</i>.
</div>
<h4>
Requirements
</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/seq/remove.hpp.html">&lt;boost/preprocessor/seq/remove.hpp&gt;</a>
</div>
<h4>
Sample Code
</h4>
<div>
<pre>
#include &lt;<a href="../headers/seq/remove.hpp.html">boost/preprocessor/seq/remove.hpp</a>&gt;
#define SEQ (a)(b)(x)(c)
<a href="seq_remove.html">BOOST_PP_SEQ_REMOVE</a>(SEQ, 2) // expands to (a)(b)(c)
</pre>
</div>
</body>
</html>

View File

@ -1,60 +0,0 @@
<html>
<head>
<title>BOOST_PP_SEQ_REPLACE</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</head>
<body>
<div style="margin-left: 0px;">
The <b>BOOST_PP_SEQ_REPLACE</b> macro replaces an element in a <i>seq</i>.
</div>
<h4>
Usage
</h4>
<div class="code">
<b>BOOST_PP_SEQ_RPLACE</b>(<i>seq</i>, <i>i</i>, <i>elem</i>)
</div>
<h4>
Arguments
</h4>
<dl>
<dt>seq</dt>
<dd>
The <i>seq</i> in which an element is to be replaced.
</dd>
<dt>i</dt>
<dd>
The zero-based position in <i>seq</i> of the element to be replaced.&nbsp;
Valid values range from <i>0</i> to <b>BOOST_PP_SEQ_SIZE</b>(<i>seq</i>) - <i>1</i>.
</dd>
<dt>elem</dt>
<dd>
The element to replace the element at index <i>i</i> within <i>seq</i>.
</dd>
</dl>
<h4>
Remarks
</h4>
<div>
This macro returns <i>seq</i> after replacing the element at index <i>i</i> with
<i>elem</i>.
</div>
<h4>
Requirements
</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/seq/replace.hpp.html">&lt;boost/preprocessor/seq/replace.hpp&gt;</a>
</div>
<h4>
Sample Code
</h4>
<div>
<pre>
#include &lt;<a href="../headers/seq/replace.hpp.html">boost/preprocessor/seq/replace.hpp</a>&gt;
#define SEQ (a)(b)(x)(d)
<a href="seq_replace.html">BOOST_PP_SEQ_REPLACE</a>(SEQ, 2, c) // expands to (a)(b)(c)(d)
</pre>
</div>
</body>
</html>

View File

@ -1,109 +0,0 @@
<html>
<head>
<title>BOOST_PP_SEQ_REST_N</title>
<link rel="stylesheet" type="text/css" href="../styles.css">
</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>
<h4>
Usage
</h4>
<div class="code">
<b>BOOST_PP_SEQ_REST_N</b>(<i>n</i>, <i>list</i>)
</div>
<h4>
Arguments
</h4>
<dl>
<dt>n</dt>
<dd>
The number of elements to remove.
</dd>
<dt>list</dt>
<dd>
The <i>seq</i> from which the elements are to be removed.
</dd>
</dl>
<h4>
Remarks
</h4>
<div>
This macro extracts <i>n</i> elements from the beginning of <i>seq</i> and
returns the remainder of <i>seq</i> as a new <i>seq</i>
</div>
<h4>
See Also
</h4>
<ul>
<li>
<a href="seq_first_n.html">BOOST_PP_SEQ_FIRST_N</a></li>
</ul>
<h4>
Requirements
</h4>
<div>
<b>Header:</b> &nbsp;<a href="../headers/seq/rest_n.hpp.html">&lt;boost/preprocessor/seq/rest_n.hpp&gt;</a>
</div>
<h4>
Sample Code
</h4>
<div>
<pre>
#include &lt;<a href="../headers/arithmetic/inc.hpp.html">boost/preprocessor/arithmetic/inc.hpp</a>&gt;
#include &lt;<a href="../headers/seq/elem.hpp.html">boost/preprocessor/seq/elem.hpp</a>&gt;
#include &lt;<a href="../headers/seq/first_n.hpp.html">boost/preprocessor/seq/first_n.hpp</a>&gt;
#include &lt;<a href="../headers/seq/rest_n.hpp.html">boost/preprocessor/seq/rest_n.hpp</a>&gt;
#include &lt;<a href="../headers/seq/size.hpp.html">boost/preprocessor/seq/size.hpp</a>&gt;
#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>
</div>
</body>
</html>

Some files were not shown because too many files have changed in this diff Show More