1<html> 2 <head> 3 <title>BOOST_PP_SEQ_TRANSFORM_S</title> 4 <link rel="stylesheet" type="text/css" href="../styles.css"> 5 </head> 6 <body> 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. 11 </div> 12 <h4> 13 Usage 14 </h4> 15 <div class="code"> 16 <b>BOOST_PP_SEQ_TRANSFORM_S</b>(<i>s</i>, <i>op</i>, <i>data</i>, <i>seq</i>) 17 </div> 18 <h4> 19 Arguments 20 </h4> 21 <dl> 22 <dt>s</dt> 23 <dd> 24 The next available <b>BOOST_PP_SEQ_FOLD_LEFT</b> fold step. 25 </dd> 26 <dt>op</dt> 27 <dd> 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>. 32 </dd> 33 <dt>data</dt> 34 <dd> 35 Auxiliary data passed to <i>pred</i>. 36 </dd> 37 <dt>seq</dt> 38 <dd> 39 The <i>seq</i> to be transformed. 40 </dd> 41 </dl> 42 <h4> 43 Remarks 44 </h4> 45 <div> 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... 49 <div> 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>)) 52 </div> 53 </div> 54 <h4> 55 See Also 56 </h4> 57 <ul> 58 <li> 59 <a href="seq_transform.html">BOOST_PP_SEQ_TRANSFORM</a></li> 60 </ul> 61 <h4> 62 Requirements 63 </h4> 64 <div> 65 <b>Header:</b> <a href="../headers/seq/transform.html"><boost/preprocessor/seq/transform.hpp></a> 66 </div> 67 <hr size="1"> 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> 71 </div> 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 75 copy at <a href= 76 "http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p> 77 </div> 78 </body> 79</html> 80