lib/sead/include/prim/seadEnum.h file

Namespaces

namespace sead

Classes

class sead::EnumUtil

Defines

#define SEAD_ENUM(NAME, ...)
#define SEAD_ENUM_EX(NAME, ...)
#define SEAD_ENUM_EX_VALUES(NAME, ...)
For use with SEAD_ENUM_EX.

Define documentation

#define SEAD_ENUM(NAME, ...)

Define an enum class. Custom enumerator values are not supported.

Example:

SEAD_ENUM(CoreId, cMain, cSub1, cSub2)

#define SEAD_ENUM_EX(NAME, ...)

Define a complex enum class with custom enumerator values with this macro. You must then use SEAD_ENUM_EX_VALUES and define the enum values in the same order.

Example:

SEAD_ENUM_EX(AssetType, Wave, Stream, Unknown) or SEAD_ENUM_EX(AssetType, Wave = 0, Stream = 1, Unknown = 0xFF)

followed by

SEAD_ENUM_EX_VALUES(AssetType, 0, 1, 0xFF) or SEAD_ENUM_EX_VALUES(AssetType, Wave, Stream, Unknown)

at namespace scope.

For the common case where enumerators do not require custom values, use SEAD_ENUM.