Definition and initialization
Base type
Base member value
Explicitly set base value
Initializing from a base value
Enum constructor
Get the list of values
Converting to a string
Conversion from a string
Associated value storage
Enum comparison