
Defining Aztec Enumerations
♦ Syntax

♦ Keywords supported by the enumeration statement

♦ Defines an enumeration data type which contains one or more discrete values. The list of allowable values is entered within the braces, and each must conform to standard Aztec identifier naming rules. There must be at least one value entered in the list.
♦ An individual enumeration value is accessed using “EnumName.value1”.
♦ If the “expose” keyword is used, an individual enumeration value can be accessed using only the name of the value. Each value name must be unique among all Aztec keywords and global variables (which are visible based on the default space list).
♦ If "expose" is not used, the name only needs to be unique within the enumeration.
♦ When a new enumeration class is created, the system automatically creates a set of instance, global and compiler methods to operate on that enumeration. A set of class constants specific to the new enumeration is created as well.
♦ Every new enumeration is a primitive data type which is derived from 'Base'. The hierarchy map shows "Enumeration" as its base class in italics to reflect the automatic method and constant creation, but there is no actual class named "Enumeration".
♦ The ‘bool’ data type is an example of an enumeration with the “expose” keyword (with values ‘true’ and ‘false’). The individual values can be accessed using just “false” and “true”, but can also be accessed using “bool.false” and “bool.true”.
♦ Some example code snippets showing Aztec enumerations
