Boost C++ Libraries of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards



BOOST_VMD_IS_ARRAY_D — Determines if a sequence is a Boost PP array. Re-entrant version.


// In header: <boost/vmd/is_array.hpp>

BOOST_VMD_IS_ARRAY_D(d, sequence)


The macro checks that the sequence is a Boost PP array. It returns 1 if it is an array, else if returns 0.

d = The next available BOOST_PP_WHILE iteration.
sequence = a possible Boost PP array.

returns = 1 if it is an array, else returns 0.

The macro will generate a preprocessing error if the input is in the form of an array but its first tuple element, instead of being a number, is a preprocessor token which VMD cannot parse, as in the example '(&2,(0,1))' which is a valid tuple but an invalid array.