Macro BOOST_VMD_ASSERT_IS_ARRAY_D
BOOST_VMD_ASSERT_IS_ARRAY_D — Asserts that the sequence is a Boost PP array. Re-entrant version.
Synopsis
BOOST_VMD_ASSERT_IS_ARRAY_D(d, sequence)
Description
Макро проверяет, что последовательность является массивом Boost PP. Если это не массив Boost PP, это вызывает ошибку компилятора.
Макро обычно проверяет наличие массива Boost PP только в режиме отладки. Однако конечный пользователь может заставить макрос проверить или не проверить, определив макрос. BOOST_VMD_ASSERT_DATA - 1 или 0 соответственно.
d = следующая итерация BOOST_PP_WHILE. Последовательность = возможная последовательность Boost PP.
Обычно макрос ничего не возвращает. Если последовательность является массивом Boost PP, ничего не выводится. Для VC++, поскольку нет надежного способа вынудить ошибку компилятора из макроса без получения вывода, если последовательность не является массивом Boost PP, макрос вызывает ошибку компилятора, выводя недействительный C++. Для всех других компиляторов ошибка компилятора вынуждена без вывода, если последовательность не является массивом Boost PP.