60 lines
1.8 KiB
Plaintext
60 lines
1.8 KiB
Plaintext
================================================================================
|
|
global enum with one option
|
|
================================================================================
|
|
|
|
enum A { One }
|
|
|
|
--------------------------------------------------------------------------------
|
|
|
|
(compilation_unit
|
|
(enum_declaration
|
|
name: (identifier)
|
|
body: (enum_member_declaration_list
|
|
(enum_member_declaration
|
|
name: (identifier)))))
|
|
|
|
================================================================================
|
|
enum with integer values
|
|
================================================================================
|
|
|
|
enum B { Ten = 10, Twenty = 20 }
|
|
|
|
--------------------------------------------------------------------------------
|
|
|
|
(compilation_unit
|
|
(enum_declaration
|
|
name: (identifier)
|
|
body: (enum_member_declaration_list
|
|
(enum_member_declaration
|
|
name: (identifier)
|
|
value: (integer_literal))
|
|
(enum_member_declaration
|
|
name: (identifier)
|
|
value: (integer_literal)))))
|
|
|
|
================================================================================
|
|
enum with byte base
|
|
================================================================================
|
|
|
|
namespace A {
|
|
enum B : byte { Five = 0x05, Fifteen = 0x0F }
|
|
}
|
|
|
|
--------------------------------------------------------------------------------
|
|
|
|
(compilation_unit
|
|
(namespace_declaration
|
|
name: (identifier)
|
|
body: (declaration_list
|
|
(enum_declaration
|
|
name: (identifier)
|
|
bases: (base_list
|
|
(predefined_type))
|
|
body: (enum_member_declaration_list
|
|
(enum_member_declaration
|
|
name: (identifier)
|
|
value: (integer_literal))
|
|
(enum_member_declaration
|
|
name: (identifier)
|
|
value: (integer_literal)))))))
|