Scoped_Enum_Type

class Scoped_Enum_Type (abstract, logical)
Direct parents:
Ancestor classes and implemented interfaces:

Declarative_Node, Enumeration_Type, Logical_IR_Root, Member, Named_Entity, Named_Type, Primary_Link_Object_Interface, Symbol, Type

Direct child classes:

Field

Kind

Type

Description

Type_Base (from Enumeration_Type)

semantic

class Type

Underlying type of the enumeration type.

Enumerators (from Enumeration_Type)

syntactic

list of class Enumerator

Size (from Type)

attribute

builtin Natural

Alignment_Log (from Type)

attribute

builtin Byte

log2 of the type’s alignment

Alignment (from Type)

attribute

builtin Natural

Alignment of the type (must be a power of 2)

Size_In_Bits (from Type)

attribute

builtin UInt64

Size of the type, in bits.

Parent (from Logical_IR_Root)

semantic

class Logical_IR_Root

Physical (from Logical_IR_Root)

semantic to physical

class Physical_IR_Root

Link_Flags (from Primary_Link_Object_Interface)

attribute

bitfield Link_Flags_Type

Component (from Primary_Link_Object_Interface)

attribute

builtin String

for local-to-library elements: name of DLL/.so when linked (sealed) for unit-local constexpr variables: name of file

Visibility (from Member)

attribute

enum Visibility_Type

Name (from Named_Entity)

attribute

builtin String