3 <title>BOOST_PP_RELATIVE_ITERATION
</title>
4 <link rel=
"stylesheet" type=
"text/css" href=
"../styles.css">
7 <div style=
"margin-left: 0px;">
8 The
<b>BOOST_PP_RELATIVE_ITERATION
</b> macro expands to the iteration value of a
<i>file-iteration
</i> depth relative to the current depth.
12 <b>BOOST_PP_RELATIVE_ITERATION
</b>(
<i>i
</i>)
18 The relative depth of the frame whose iteration value is to be retreived.
19 Valid values range from
<i>0</i> to
<b>BOOST_PP_ITERATION_DEPTH
</b>() -
<i>1</i>.
24 This macro is only valid when a
<i>file-iteration
</i> is in progress.
27 The argument
<i>i
</i> is interpreted as the number of frames
<i>outward
</i> from the current frame.
28 Therefore,
<b>BOOST_PP_RELATIVE_ITERATION
</b>(
<i>0</i>) is equivalent to
<b>BOOST_PP_ITERATION
</b>().
32 <b>Header:
</b> <a href=
"../headers/iteration/iterate.html"><boost/preprocessor/iteration/iterate.hpp
></a>
37 #if !
<a href=
"is_iterating.html">BOOST_PP_IS_ITERATING
</a>
42 #include
<<a href=
"../headers/iteration/iterate.html">boost/preprocessor/iteration/iterate.hpp
</a>>
45 #define
<a href=
"iteration_params_x.html">BOOST_PP_ITERATION_PARAMS_1
</a> (
4, (
0,
3,
"file.h",
0x0001))
46 #include
<a href=
"iterate.html">BOOST_PP_ITERATE
</a>()
49 #define
<a href=
"iteration_params_x.html">BOOST_PP_ITERATION_PARAMS_1
</a> (
4, (
1,
10,
"file.h",
0x0002))
50 #include
<a href=
"iterate.html">BOOST_PP_ITERATE
</a>()
54 #elif
<a href=
"iteration_depth.html">BOOST_PP_ITERATION_DEPTH
</a>() ==
1 \
55 && <a href=
"iteration_flags.html">BOOST_PP_ITERATION_FLAGS
</a>() ==
0x0001 \
59 #define
<a href=
"iteration_params_x.html">BOOST_PP_ITERATION_PARAMS_2
</a> (
3, (
1,
10,
"file.h"))
60 #include
<a href=
"iterate.html">BOOST_PP_ITERATE
</a>()
62 #elif
<a href=
"iteration_depth.html">BOOST_PP_ITERATION_DEPTH
</a>() ==
1 \
63 && <a href=
"iteration_flags.html">BOOST_PP_ITERATION_FLAGS
</a>() ==
0x0002 \
67 #define
<a href=
"iteration_params_x.html">BOOST_PP_ITERATION_PARAMS_2
</a> \
68 (
3, (
1,
<a href=
"iteration.html">BOOST_PP_ITERATION
</a>(),
"file.h")) \
70 #include
<a href=
"iterate.html">BOOST_PP_ITERATE
</a>()
72 #elif
<a href=
"iteration_depth.html">BOOST_PP_ITERATION_DEPTH
</a>() ==
2 \
73 && <a href=
"frame_flags.html">BOOST_PP_FRAME_FLAGS
</a>(
1) ==
0x0001 \
77 #define
<a href=
"iteration_params_x.html">BOOST_PP_ITERATION_PARAMS_3
</a> \
78 (
3, (
1,
<a href=
"iteration.html">BOOST_PP_ITERATION
</a>(),
"file.h")) \
80 #include
<a href=
"iterate.html">BOOST_PP_ITERATE
</a>()
84 previous:
<a href=
"relative_iteration.html">BOOST_PP_RELATIVE_ITERATION
</a>(
1)
85 current:
<a href=
"iteration.html">BOOST_PP_ITERATION
</a>()
90 <div style=
"margin-left: 0px;">
91 <i>© Copyright
<a href=
"http://www.housemarque.com" target=
"_top">Housemarque Oy
</a> 2002</i>
92 </br><i>© Copyright Paul Mensonides
2002</i>
94 <div style=
"margin-left: 0px;">
95 <p><small>Distributed under the Boost Software License, Version
1.0. (See
96 accompanying file
<a href=
"../../../../LICENSE_1_0.txt">LICENSE_1_0.txt
</a> or
98 "http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt
</a>)
</small></p>