mirror of
https://github.com/skyline-emu/skyline.git
synced 2024-11-04 23:55:08 +01:00
Make ENUM_STRING
function static
`ENUM_STRING` can be used inside a `class`/`struct`/`union` for `enum`s contained within them. Making the function `static` allows doing this and doesn't require supplying a `this` pointer of the enclosing class for usage.
This commit is contained in:
parent
c2a6da6431
commit
4b9f99bb27
@ -14,14 +14,14 @@
|
||||
* @brief Creates a function to convert an enumerant to its string representation at runtime
|
||||
* @example ENUM_STRING(Example, { ENUM_CASE(A); ENUM_CASE(B); })
|
||||
*/
|
||||
#define ENUM_STRING(name, cases) \
|
||||
constexpr const char *ToString(name value) { \
|
||||
using ENUM_TYPE = name; \
|
||||
switch (value) { \
|
||||
cases \
|
||||
default: \
|
||||
return "Unknown"; \
|
||||
} \
|
||||
#define ENUM_STRING(name, cases) \
|
||||
constexpr static const char *ToString(name value) { \
|
||||
using ENUM_TYPE = name; \
|
||||
switch (value) { \
|
||||
cases \
|
||||
default: \
|
||||
return "Unknown"; \
|
||||
} \
|
||||
}
|
||||
|
||||
/**
|
||||
@ -29,7 +29,7 @@
|
||||
*/
|
||||
#define ENUM_CASE_PAIR(key, value) \
|
||||
case ENUM_TYPE::key: \
|
||||
return value
|
||||
return value
|
||||
|
||||
/**
|
||||
* @brief Creates a switch case statement to convert an enumerant to the given values
|
||||
|
Loading…
Reference in New Issue
Block a user