Unqualified_Deduced_Template_Instance_Type_Selection¶
- class Unqualified_Deduced_Template_Instance_Type_Selection (concrete, physical)¶
Template instance selection using C++17. e.g., the type selection in
vector v { 1, 2, 3 };The Symbol_Selection may beNoNodeif deduction was not possible (usually because the initializer was a type-dependent expression)- Implemented interfaces:
implements Direct_Object_Selection_Interface
implements Direct_Template_Instance_Selection_Interface
- Direct parents:
- Ancestor classes and implemented interfaces:
Declaration, Definition, Direct_Object_Selection_Interface, Direct_Template_Instance_Selection_Interface, Linked_Node, Operation, Physical_IR_Root, Possibly_Attributed_Type_Interface, Selection_Interface, Template_Instance_Selection_Interface, Type_Definition, Type_Interface, Type_Selection, Unnamed_Type_Definition, Unqualified_Template_Instance_Type_Selection, Unqualified_Type_Selection
Field
Kind
Type
Description
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
Symbol_Declaration (from Direct_Object_Selection_Interface)
semantic
class Declaration
if available, the PIR declaration of the selected symbol (can be
NULL) use inter-part edge ‘Logical’ to get the LIR symbolIts_Template (from Direct_Template_Instance_Selection_Interface)
semantic
class Declaration
the template on which the routine or type is based (points to the undecorated routine/composite node)
Template_Arguments (from Template_Instance_Selection_Interface)
syntactic
list of class Template_Argument
the arguments used for the template’s parameters