Macro BOOST_VMD_ENUM_D
BOOST_VMD_ENUM_D — Converts a sequence to comma-separated elements which are the elements of the sequence. Re-entrant version.
Synopsis
Description
d = следующая итерация BOOST_PP_WHILE. ... = вариативные параметры.
Требуется первый вариадный параметр и последовательность для преобразования.
Дополнительными необязательными вариадными параметрами могут быть параметры типа возврата. Параметры типа возврата позволяют каждому элементу в последовательности быть преобразованным в двухэлементный кортеж, где первый элемент кортежа является типом, а второй элемент кортежа - данными элемента.
По умолчанию BOOST_VMD_RETURN_NO_TYPE возвращает тип не как часть каждого преобразованного элемента, а только данные. Все остальные возвращают тип и данные в виде двухэлементного набора. Если BOOST_VMD_RETURN_TYPE указан, конкретный тип элемента возвращается в кортеж. Если BOOST_VMD_RETURN_TYPE_ARRAY указан, тип массива возвращается, если элемент является массивом, или тип кортежа возвращается, если элемент является кортежем, или фактический тип возвращается для некортежных данных. Если BOOST_VMD_RETURN_TYPE_LIST указан, тип списка возвращается, если элемент является списком, в противном случае тип кортежа возвращается, если элемент является кортежем, в противном случае фактический тип возвращается для некортежных данных. Если BOOST_VMD_RETURN_TYPE_TUPLE указан, то для всех данных, подобных этим данным, возвращается тип кортежа, а для данных, не относящихся к кортежу. Если указано более одного необязательного параметра типа возврата, последний из указанных параметров определяет тип возврата.
возвраты = данные, разделенные запятой, иначе известные как вариадные данные. Если последовательность пуста, вариадные данные пусты. Если необязательный тип возврата, отличный от BOOST_VMD_RETURN_NO_TYPE, указывается тип и данные каждого элемента возвращаются как часть вариадных данных. В противном случае возвращаются только данные каждого элемента, который является по умолчанию.