• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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.&nbsp; 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>).&nbsp;
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>.&nbsp;
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>.&nbsp; It builds a
47			new <i>seq</i> out of the results of each call.&nbsp; 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> &nbsp;<a href="../headers/seq/transform.html">&lt;boost/preprocessor/seq/transform.hpp&gt;</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