65816-llvm-mos/runtime/include/c++/etl/stringify.h
2026-05-30 19:40:29 -05:00

21 lines
649 B
C

#ifndef ETL_ETL_STRINGIFY_INCLUDED
#define ETL_ETL_STRINGIFY_INCLUDED
#ifndef STRINGIFY
/** Helper macro for STRINGIFY. */
#define STRINGIFY_1(...) #__VA_ARGS__
/**
* Indirect stringification.
*
* Doing two levels allows the parameter to be a macro itself.
* For example, compile with `-DFOO=bar`, `STRINGIFY(FOO)` converts to "bar".
*
* \param x will be converted to one string, including the spaces and commas
* between arguments. For example `STRINGIFY( a , b )` will be expanded to "a
* , b".
*/
#define STRINGIFY(...) STRINGIFY_1(__VA_ARGS__)
#endif /* STRINGIFY */
#endif /* ETL_ETL_STRINGIFY_INCLUDED */