The BOOST_PP_TUPLE_ELEM macro extracts an element from a tuple.

Usage

BOOST_PP_TUPLE_ELEM(i, tuple) (v)

or

BOOST_PP_TUPLE_ELEM(size, i, tuple) (v)

Arguments

size
The size of the tuple.  The size is ignored.
i
The zero-based index into the tuple of the element to be extracted.  Valid values range from 0 to size - 1.
tuple
The tuple from which an element is to be extracted.

Remarks

You can invoke the variadic macro as BOOST_PP_TUPLE_ELEM(i,tuple), or BOOST_PP_TUPLE_ELEM(size,i,tuple) for backward compatibility.

See Also

Requirements

Header:  <boost/preprocessor/tuple/elem.hpp>

Sample Code

#include <boost/preprocessor/tuple/elem.hpp>

#define TUPLE (a, b, c, d)

BOOST_PP_TUPLE_ELEM(0, TUPLE) // expands to a in the variadic version
BOOST_PP_TUPLE_ELEM(3, TUPLE) // expands to d in the variadic version

Copyright Housemarque Oy 2002
Copyright Paul Mensonides 2002
Copyright Edward Diener 2011,2013,2020

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)