...one 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>
BOOST_VMD_IS_NUMBER(sequence)
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.