Function_Type_Definition¶
- class Function_Type_Definition (concrete, physical)¶
- Direct parents:
inherits Routine_Type_Definition
- Ancestor classes and implemented interfaces:
Declaration, Definition, In_Place_Type_Composition, Linked_Node, Operation, Parameter_List_Interface, Physical_IR_Root, Possibly_Attributed_Type_Interface, Routine_Type_Definition, Throw_Interface, Type_Definition, Type_Interface, Unnamed_Type_Definition
Field
Kind
Type
Description
Return_Type (from Routine_Type_Definition)
syntactic
interface Possibly_Attributed_Type_Interface
It’s syntactic because the type may be defined in-place in case of C structs; in the more usual semantic case, the child will be a Type_Selection node
Attributes (from Routine_Type_Definition)
attribute
bitfield Physical_Routine_Attributes_Type
Bitfield of flags like is_const, has_void_param etc.
Calling_Convention (from Routine_Type_Definition)
attribute
Calling convention that was syntactically present.
Logical (from Linked_Node)
semantic to logical
class Logical_IR_Root
cross-reference into LIR
Parent (from Physical_IR_Root)
semantic
class Physical_IR_Root
The parent of the node in the syntactic forest.
Original_Position_Index (from Physical_IR_Root)
attribute
builtin SLoc_Index_Type
Internal source location info. If from macro expansion, this location is inside the macro body or macro argument
Original_Position (from Physical_IR_Root)
attribute
builtin SLoc
Source location. If from macro expansion, this location is inside the macro body or macro argument
Position (from Physical_IR_Root)
attribute
builtin SLoc
Source location. If from macro expansion, this location is that of the macro expansion
Artificial (from Physical_IR_Root)
attribute
builtin Boolean
Whether this node was compiler-generated
Parenthesized (from Physical_IR_Root)
attribute
builtin Boolean
Whether this node was enclosed in parentheses (used for expressions)
In_Template_Instance (from Physical_IR_Root)
attribute
builtin Boolean
Whether this node is inside a template instance
Enclosing_Template_Instance (from Physical_IR_Root)
semantic
class Physical_IR_Root
Innermost enclosing template instance if In_Template_Instance is true
Throws (from Throw_Interface)
syntactic
list of class Exception_Type_Specification
Parameters (from Parameter_List_Interface)
syntactic
list of class Possibly_Attributed_Parameter_Interface
All parameters, including the ellipsis, but excluding
thisUsually some Parameter_Definitions, but could also be an Attributed_Definition. Useskip_decorators()to get the parameter itself.