abstract const class sys::Enum

sys::Obj
  sys::Enum

Enum is the base class for enum classes defined using the enum keyword. An enum models a fixed range of discrete values. Each value has an Int ordinal and a Str name.

Every enum class implicitly has the following slots auto-generated by the compiler:

See docLang::Enums for details.

compare

virtual override Int compare(Obj obj)

Compare based on ordinal value.

doFromStr

protected static Enum? doFromStr(Str type, Str name, Bool checked)

Protected fromStr implementation - for compiler use only. A public static fromStr method is always auto-generated by the compiler for each enum.

equals

virtual override Bool equals(Obj? obj)

Enums are only equal if same instance using ===.

make

new make(Int ordinal, Str name)

Protected constructor - for compiler use only.

name

Str name()

ordinal

Int ordinal()

toStr

virtual override Str toStr()

Always returns name().