Files
preprocessor/doc/reference/list_transform.htm

75 lines
2.9 KiB
HTML
Raw Normal View History

2002-02-04 14:57:59 +00:00
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Boost.Preprocessor</title>
</head>
<body bgcolor="#FFFFFF" link="#0000ff" vlink="#800080">
<table border="0" cellpadding="7" cellspacing="0" width="100%" summary=
"header">
<tr>
<td valign="top" width="300">
<h3><a href="../../../../index.htm"><img height="86" width="277" alt="C++ Boost" src="../../../../c++boost.gif" border="0"></a></h3>
</td>
<td valign="top">
<h1 align="center">Boost.Preprocessor</h1>
<h2 align="center">Reference</h2>
</td>
</tr>
</table>
2002-01-31 15:36:01 +00:00
2002-02-04 14:57:59 +00:00
<hr>
2002-01-31 15:36:01 +00:00
2002-02-04 14:57:59 +00:00
<a href="list_to_tuple.htm">Prev</a> <a href="logical.htm">Next</a> <a href="index.htm#Macros">Macros</a> <a href="index.htm#Headers">Headers</a>
2002-01-31 15:36:01 +00:00
<hr>
2002-02-04 14:57:59 +00:00
<h1>#include &lt;<a href="../../../../boost/preprocessor/list/transform.hpp">boost/preprocessor/list/transform.hpp</a>&gt;</h1>
2002-01-31 15:36:01 +00:00
<hr>
2002-02-04 14:57:59 +00:00
<h2><a name="BOOST_PP_LIST_TRANSFORM">#define BOOST_PP_LIST_TRANSFORM</a>(F,P,L)</h2>
<p>Applies the macro <code>F(D,P,X)</code> to each element <code>X</code>
of the list producing a new list.</p>
2002-01-31 15:36:01 +00:00
2002-02-04 14:57:59 +00:00
<p>In other words, expands to:</p>
2002-01-31 15:36:01 +00:00
2002-02-04 14:57:59 +00:00
<pre>
2002-01-31 15:36:01 +00:00
<a href="list_adt.htm#BOOST_PP_LIST_CONS">BOOST_PP_LIST_CONS</a>(F(D,P,<a href="list_at.htm#BOOST_PP_LIST_AT">BOOST_PP_LIST_AT</a>(L,0)),
<a href="list_adt.htm#BOOST_PP_LIST_CONS">BOOST_PP_LIST_CONS</a>(F(D,P,<a href="list_at.htm#BOOST_PP_LIST_AT">BOOST_PP_LIST_AT</a>(L,1)),
...
<a href="list_adt.htm#BOOST_PP_LIST_CONS">BOOST_PP_LIST_CONS</a>(F(D,P,<a href="list_at.htm#BOOST_PP_LIST_AT">BOOST_PP_LIST_AT</a>(L,<a href="dec.htm#BOOST_PP_DEC">BOOST_PP_DEC</a>(<a href="list_size.htm#BOOST_PP_LIST_SIZE">BOOST_PP_LIST_SIZE</a>(L)))),
<a href="list_adt.htm#BOOST_PP_LIST_NIL">BOOST_PP_LIST_NIL</a>) ... ))
2002-02-04 14:57:59 +00:00
</pre>
2002-01-31 15:36:01 +00:00
2002-02-04 14:57:59 +00:00
<p>For example,</p>
2002-01-31 15:36:01 +00:00
2002-02-04 14:57:59 +00:00
<pre>
2002-01-31 15:36:01 +00:00
<a href="list_transform.htm#BOOST_PP_LIST_TRANSFORM">BOOST_PP_LIST_TRANSFORM</a>(BOOST_PP_ADD_D,2,<a href="tuple_to_list.htm#BOOST_PP_TUPLE_TO_LIST">BOOST_PP_TUPLE_TO_LIST</a>(2,(1,2)))
2002-02-04 14:57:59 +00:00
</pre>
<p>expands to the same as:</p>
<pre>
<a href="tuple_to_list.htm#BOOST_PP_TUPLE_TO_LIST">BOOST_PP_TUPLE_TO_LIST</a>(2,(3,4))
</pre>
2002-01-31 15:36:01 +00:00
2002-02-04 14:57:59 +00:00
<h3>Uses</h3>
<ul>
<li><a href="list_fold_right.htm#BOOST_PP_LIST_FOLD_RIGHT">BOOST_PP_LIST_FOLD_RIGHT</a>()</li>
</ul>
2002-01-31 15:36:01 +00:00
2002-02-04 14:57:59 +00:00
<hr>
2002-01-31 15:36:01 +00:00
2002-02-04 14:57:59 +00:00
<a href="list_to_tuple.htm">Prev</a> <a href="logical.htm">Next</a> <a href="index.htm#Macros">Macros</a> <a href="index.htm#Headers">Headers</a>
2002-01-31 15:36:01 +00:00
<hr>
2002-02-04 14:57:59 +00:00
<p>Revised <!--webbot bot="Timestamp" s-type="EDITED" s-format="%d %b %Y" startspan --><!--webbot bot="Timestamp" endspan i-checksum="15246" --></p>
<p><i>&copy; Copyright <a href="http://www.housemarque.com">Housemarque Oy</a> 2002</i></p>
2002-01-31 15:36:01 +00:00
2002-02-04 14:57:59 +00:00
<p><i>Permission to copy, use, modify, sell and distribute this document is granted
2002-01-31 15:36:01 +00:00
provided this copyright notice appears in all copies. This document is provided
"as is" without express or implied warranty, and with no claim as to its suitability
2002-02-04 14:57:59 +00:00
for any purpose.</i></p>
2002-01-31 15:36:01 +00:00
2002-02-04 14:57:59 +00:00
</body></html>