Enum Symbols
There is a set of syntactic symbols that characterize the components of enum constructs. These are very like the brace list symbols[1] (see Brace List Symbols).
1: enum test
2: {
3: GOOD,
4: BETTER,
5: BEST
6: };Line 2 is assigned enum-open syntax, and line 6 enum-close. The first enum element on line 3 is assigned enum-intro syntax, and the remaining elements, on lines 4 and 5 are assigned enum-entry.
When the first enum element follows the ‘{’ of the enum, all on the opening line of the construct, the parsing is a little more involved.
1: enum test { GOOD,
2: BETTER,
3: BEST
4: };Here, line 2 is assigned a syntactic context with two elements: enum-intro anchored on the beginning of indentation of line 1, and enum-entry anchored on the first element GOOD on line 1. Line 3 is enum-entry and line 4 enum-close as you’d expect.
Indeed an
enumused to be parsed with these other symbols. The two types of construct were separated in 2024-09 to make it easier to give anenumindentation like that of aclass. ↩︎