The BOOST_PP_LIST_TO_TUPLE macro converts a list to a tuple.

Usage

BOOST_PP_LIST_TO_TUPLE(list)

Arguments

list
The list to be converted.

Remarks

If list is, for example, (a, (b, (c, BOOST_PP_NIL))), this macro will produce:
(a, b, c)
Previously, this macro could not be used inside BOOST_PP_FOR.  There is no longer any such restriction.  It is more efficient, however, to use BOOST_PP_LIST_TO_TUPLE_R in such a situation.

If the list to be converted is empty, as represented by 'BOOST_PP_NIL', the resulting tuple is undefined since a tuple cannot be empty.

See Also

Requirements

Header:  <boost/preprocessor/list/to_tuple.hpp>

Sample Code

#include <boost/preprocessor/list/to_tuple.hpp>

#define LIST (w, (x, (y, (z, BOOST_PP_NIL))))

BOOST_PP_LIST_TO_TUPLE(LIST) // expands to (w, x, y, z)

© Copyright Housemarque Oy 2002
© Copyright Paul Mensonides 2002

Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at www.boost.org/LICENSE_1_0.txt)