Variadic matrix in doxygen

I have a macro that I use to generate enumerations, and I would like Doxygen to pick them, however I can not find any information about variable macros and doxygen.

The listing is as follows:

#define ENUM_DECLARATION(TYPE, ...) enum class TYPE { __VA_ARGS__ }

The macro actually becomes much more complex, as it also initializes the factory to get enumerations by string name and vice versa. However, I do not need doxygen to generate additional information.

As I tried to define a macro in Doxygen,

ENUM_DECLARATION(TYPE, ...) enum class TYPE { __VA_ARGS__ };

Unfortunately, this does not work when typing

ENUM_DECLARATION(eTimingBits, TIMING_BLOCK_0, TIMING_BLOCK_1, TIMING_BLOCK_2, TIMING_BLOCK_3);

Using the -d Preprocessor option, I get the output:

TIMING_BLOCK_1     eTimingBits   {TIMING_BLOCK_0   } TIMING_BLOCK_2, TIMING_BLOCK_3);

So, it seems that doxygen has some understanding of the ellipse, but not completely. Does anyone know if it is possible that I am doing, and if so, how can I make Doxygen generate the enum correctly?

+4
source share

All Articles