3 <title>BOOST_PP_SEQ_TRANSFORM_S
</title>
4 <link rel=
"stylesheet" type=
"text/css" href=
"../styles.css">
7 <div style=
"margin-left: 0px;">
8 The
<b>BOOST_PP_SEQ_TRANSFORM_S
</b> macro transforms each element in a
<i>seq
</i>
9 according to a supplied transformation.
It reenters
<b>BOOST_PP_SEQ_FOLD_LEFT
</b>
10 with maximum efficiency.
16 <b>BOOST_PP_SEQ_TRANSFORM_S
</b>(
<i>s
</i>,
<i>op
</i>,
<i>data
</i>,
<i>seq
</i>)
24 The next available
<b>BOOST_PP_SEQ_FOLD_LEFT
</b> fold step.
28 A ternary predicate of the form
<i>op
</i>(
<i>s
</i>,
<i>data
</i>,
<i>elem
</i>).
29 This transformation is expanded by
<b>BOOST_PP_SEQ_TRANSFORM
</b> for each
30 element in
<i>seq
</i> with the next available
<b>BOOST_PP_SEQ_FOLD_LEFT
</b> fold
31 step, the auxiliary
<i>data
</i>, and the current element in
<i>seq
</i>.
35 Auxiliary data passed to
<i>pred
</i>.
39 The
<i>seq
</i> to be transformed.
46 This macro expands
<i>op
</i> for each element in
<i>seq
</i>.
It builds a
47 new
<i>seq
</i> out of the results of each call.
If, for example,
<i>seq
</i>
48 is (
<i>a
</i>)(
<i>b
</i>)(
<i>c
</i>), this macro expands to...
50 (
<i>op
</i>(
<i>d
</i>,
<i>data
</i>,
<i>a
</i>))(
<i>op
</i>(
<i>d
</i>,
<i>data
</i>,
<i>b
</i>))(
<i>op
</i>(
<i>d
</i>,
51 <i>data
</i>,
<i>c
</i>))
59 <a href=
"seq_transform.html">BOOST_PP_SEQ_TRANSFORM
</a></li>
65 <b>Header:
</b> <a href=
"../headers/seq/transform.html"><boost/preprocessor/seq/transform.hpp
></a>
68 <div style=
"margin-left: 0px;">
69 <i>© Copyright
<a href=
"http://www.housemarque.com" target=
"_top">Housemarque Oy
</a> 2002</i>
70 </br><i>© Copyright Paul Mensonides
2002</i>
72 <div style=
"margin-left: 0px;">
73 <p><small>Distributed under the Boost Software License, Version
1.0. (See
74 accompanying file
<a href=
"../../../../LICENSE_1_0.txt">LICENSE_1_0.txt
</a> or
76 "http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt
</a>)
</small></p>