| 1 | /* @title: Stringification signature macros */ |
|---|---|
| 2 | #pragma once |
| 3 | #include <compiler/core.h> |
| 4 | |
| 5 | #define STRINGIFY_DECLARE_2(fn_name, in_type) \ |
| 6 | static inline const char *fn_name(in_type stringify_in) |
| 7 | |
| 8 | #define STRINGIFY_DECLARE_1(type) STRINGIFY_DECLARE_2(type##_to_str, type) |
| 9 | |
| 10 | #define STRINGIFY_DECLARE(...) PP_CALL(STRINGIFY_DECLARE, __VA_ARGS__) |
| 11 | |
| 12 | #define STRINGIFY_DECLARE_ENUM(type) \ |
| 13 | STRINGIFY_DECLARE_2(type##_to_str, enum type) |
| 14 |