mirror of https://git.citron-emu.org/Citron/Citron
Allows pushing strongly-typed enum members without the need to always
cast them at the call sites.
Note that we *only* allow strongly-typed enums in this case. The reason
for this is that strongly typed enums have a guaranteed defined size, so
the size of the data being pushed is always deterministic. With regular
enums this can be a little more error-prone, so we disallow them.
This function simply uses the underlying type of the enum to determine
the size of the data. For example, if an enum is defined as:
enum class SomeEnum : u16 {
SomeEntry
};
if PushEnum(SomeEnum::SomeEntry); is called, then it will push a
u16-size amount of data.
|
||
|---|---|---|
| .. | ||
| kernel | ||
| service | ||
| config_mem.cpp | ||
| config_mem.h | ||
| ipc.h | ||
| ipc_helpers.h | ||
| lock.cpp | ||
| lock.h | ||
| result.h | ||
| romfs.cpp | ||
| romfs.h | ||
| shared_page.cpp | ||
| shared_page.h | ||