The BOOST_PP_TUPLE_INSERT macro inserts an element into an tuple.

Usage

BOOST_PP_TUPLE_INSERT(tuple, i, elem) (v)

Arguments

tuple
The tuple into which an element is to be inserted.
i
The zero-based position in tuple where an element is to be inserted.  Valid values range from 0 to BOOST_PP_TUPLE_SIZE(tuple).
elem
The element to insert.

Remarks

This macro inserts elem before the element at index i.
If the operation attempts to create an tuple that is larger than BOOST_PP_LIMIT_TUPLE, the result is undefined.
This macro uses BOOST_PP_WHILE interally.  Therefore, to use the d parameter passed from other macros that use BOOST_PP_WHILE, see BOOST_PP_TUPLE_INSERT_D.

See Also

Requirements

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

Sample Code

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

#define TUPLE (a, b, d)

BOOST_PP_TUPLE_INSERT(TUPLE, 2, c) // expands to (a, b, c, d)

© Copyright Edward Diener 2013

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)