Files
preprocessor/docs.1/ref/local_macro.html
Paul Mensonides cdc4be5256 initial revision
[SVN r15198]
2002-09-08 09:40:56 +00:00

56 lines
1.7 KiB
HTML

<html>
<head>
<title>BOOST_PP_LOCAL_MACRO</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_MACRO</b> macro is a user-defined <i>named external argument</i> used by <b>BOOST_PP_LOCAL_ITERATE</b>.
</div>
<h4>Usage</h4>
<div class="code">
#define <b>BOOST_PP_LOCAL_MACRO</b>(<i>n</i>) ...
</div>
<h4>Arguments</h4>
<dl>
<dt>n</dt>
<dd>
The current iteration value received from the <i>local-iteration</i> mechanism.
</dd>
</dl>
<h4>Remarks</h4>
<div>
This macro is automatically undefined for reuse by a call to <b>BOOST_PP_LOCAL_ITERATE</b>.
</div>
<h4>See Also</h4>
<ul>
<li><a href="local_iterate.html">BOOST_PP_LOCAL_ITERATE</a></li>
</ul>
<h4><a class="local" onclick="toggle('sample');" onmouseover="change(this);" onmouseout="revert(this);">Sample Code</a></h4>
<div id="sample"><pre>
#include &lt;boost/preprocessor/iteration/local.hpp&gt;
template&lt;int&gt; struct sample;
#define BOOST_PP_LOCAL_MACRO(n) /* ... */ \
template&lt;&gt; struct sample&lt;n&gt; { \
enum { value = n }; \
}; \
/**/
#define BOOST_PP_LOCAL_LIMITS (1, 5)
#include BOOST_PP_LOCAL_ITERATE()
/* expands to...
template&lt;&gt; struct sample&lt;1&gt; { enum { value = 1 }; };
template&lt;&gt; struct sample&lt;2&gt; { enum { value = 2 }; };
template&lt;&gt; struct sample&lt;3&gt; { enum { value = 3 }; };
template&lt;&gt; struct sample&lt;4&gt; { enum { value = 4 }; };
template&lt;&gt; struct sample&lt;5&gt; { enum { value = 5 }; };
*/
<pre></div>
</body>
</html>