Routine_Type¶
- class Routine_Type (abstract, logical)¶
used in typedefs and in function pointers
- Implemented interfaces:
implements Parameters_Interface
- Direct parents:
inherits Unnamed_Type
- Ancestor classes and implemented interfaces:
Declarative_Node, Logical_IR_Root, Parameters_Interface, Symbol, Type, Unnamed_Type
- Direct child classes:
subclass Function_Type
subclass Method_Type
Field
Kind
Type
Description
Return_Type
semantic
class Type
Calling_Convention
attribute
Effective calling convention after equivalent conventions are merged.
Attributes
attribute
bitfield Logical_Routine_Attributes_Type
Bitfield of flags like is_const, has_void_param etc. Note: a function’s C++03 throw annotation is not part of the type. Starting with C++17 the noexcept-status is part of the type.
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
Parameters (from Parameters_Interface)
syntactic
list of class Parameter