=======================================
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)))))))
