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_NUMBER — Tests whether a sequence is a Boost PP number.


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



The macro checks to see if a sequence is a Boost PP number. A Boost PP number is a value from 0 to BOOST_PP_LIMIT_MAG.

sequence = a possible number

returns = 1 if the sequence is a Boost PP number, 0 if it is not.

If the input is not a VMD data type this macro could lead to a preprocessor error. This is because the macro uses preprocessor concatenation to determine if the input is a number once it is determined that the input does not start with parenthesis. If the data being concatenated would lead to an invalid preprocessor token the compiler can issue a preprocessor error.