mirror of
https://github.com/boostorg/preprocessor.git
synced 2025-07-15 13:36:33 +02:00
54 lines
1.8 KiB
HTML
54 lines
1.8 KiB
HTML
<html>
|
|
<head>
|
|
<title>BOOST_PP_LOCAL_ITERATE</title>
|
|
<link rel="stylesheet" type="text/css" href="../styles.css">
|
|
<script language="javascript" type="text/javascript" src="../scripts.js"></script>
|
|
</head>
|
|
<body onload="init('sample');">
|
|
<div style="margin-left: 0px;">
|
|
The <b>BOOST_PP_LOCAL_ITERATE</b> macro initiates a <i>local-iteration</i>.
|
|
</div>
|
|
<h4>Usage</h4>
|
|
<div class="code">
|
|
#include <b>BOOST_PP_LOCAL_ITERATE</b>()
|
|
</div>
|
|
<h4>Remarks</h4>
|
|
<div>
|
|
This macro causes the user-defined macro <b>BOOST_PP_LOCAL_MACRO</b> to be expanded vertically with values in the range specified by <b>BOOST_PP_LOCAL_LIMITS</b>.
|
|
</div>
|
|
<h4>See Also</h4>
|
|
<ul>
|
|
<li><a href="local_limits.html">BOOST_PP_LOCAL_LIMITS</a></li>
|
|
<li><a href="local_macro.html">BOOST_PP_LOCAL_MACRO</a></li>
|
|
</ul>
|
|
<h4>Requirements</h4>
|
|
<div>
|
|
<b>Header:</b> <a href="../headers/iteration/local.hpp.html"><boost/preprocessor/iteration/local.hpp></a>
|
|
</div>
|
|
<h4><a class="local" onclick="toggle('sample');" onmouseover="change(this);" onmouseout="revert(this);">Sample Code</a></h4>
|
|
<div id="sample"><pre>
|
|
#include <boost/preprocessor/iteration/local.hpp>
|
|
|
|
template<int> struct sample;
|
|
|
|
#define BOOST_PP_LOCAL_MACRO(n) /* ... */ \
|
|
template<> struct sample<n> { \
|
|
enum { value = n }; \
|
|
}; \
|
|
/**/
|
|
|
|
#define BOOST_PP_LOCAL_LIMITS (1, 5)
|
|
|
|
#include BOOST_PP_LOCAL_ITERATE()
|
|
/* expands to...
|
|
|
|
template<> struct sample<1> { enum { value = 1 }; };
|
|
template<> struct sample<2> { enum { value = 2 }; };
|
|
template<> struct sample<3> { enum { value = 3 }; };
|
|
template<> struct sample<4> { enum { value = 4 }; };
|
|
template<> struct sample<5> { enum { value = 5 }; };
|
|
*/
|
|
<pre></div>
|
|
</body>
|
|
</html>
|