Back to Arangodb

BOOST_PP_ENUM_TRAILING_BINARY_PARAMS

3rdParty/boost/1.78.0/libs/preprocessor/doc/ref/etbp.html

3.12.9.12.0 KB
Original Source

The BOOST_PP_ENUM_TRAILING_BINARY_PARAMS macro generates a comma-separated list of binary parameters with a leading comma.

Usage

BOOST_PP_ENUM_TRAILING_BINARY_PARAMS (count, p1, p2)

Arguments

count The number of parameters to generate. Valid values range from 0 to BOOST_PP_LIMIT_REPEAT. p1 The text of the first part of the parameter. BOOST_PP_ENUM_TRAILING_BINARY_PARAMS concatenates numbers ranging from 0 to count - 1 to generate parameters. p2 The text of the first part of the parameter. BOOST_PP_ENUM_TRAILING_BINARY_PARAMS concatenates numbers ranging from 0 to count - 1 to generate parameters.

Remarks

This macro expands to the comma-separated sequence: , p1 ## 0 p2 ## 0, p1 ## 1 p2 ## 1, ... p1 ## count - 1 p2 ## count - 1

To use the z parameter passed from other macros that use BOOST_PP_REPEAT , see BOOST_PP_ENUM_TRAILING_BINARY_PARAMS_Z.

See Also

Requirements

Header: <boost/preprocessor/repetition/enum_trailing_binary_params.hpp>

Sample Code

#include <[boost/preprocessor/facilities/intercept.hpp](../headers/facilities/intercept.html)>
#include <[boost/preprocessor/repetition/enum\_trailing\_binary\_params.hpp](../headers/repetition/etbp.html)>

template<class X[BOOST\_PP\_ENUM\_TRAILING\_BINARY\_PARAMS](etbp.html)(4, class A, = X[BOOST\_PP\_INTERCEPT](intercept.html))>
struct sample {
   // ...
};

/* expands to...

template<class X, class A0 = X, class A1 = X, class A2 = X, class A3 = X>
struct sample {
   // ...
}
*/

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)