Expression¶
- class Expression (abstract, physical)¶
- Direct parents:
inherits Operation
- Ancestor classes and implemented interfaces:
- Direct child classes:
subclass Error_Expression
subclass Type_Operand_Expression
subclass Throw_Expression
subclass General_Coroutine_Await_Expression
subclass C_Comma_Sequence
subclass Va_Arg_Expression
subclass Statement_Expression
subclass Expression_Pack_Expansion
subclass Object_Selection
subclass Literal
subclass Designator
subclass Builtin_Expression
subclass Assignment
subclass Operator
subclass Routine_Call
subclass Lambda_Expression
subclass Generic_Selection
subclass Generic_Association
subclass Asm_Operand
subclass Requires_Expression
Field
Kind
Type
Description
Its_Type
semantic to logical
class Type
type of the expression’s result as denoted by the type’s declaration
Is_LValue
attribute
builtin Boolean
Whether this expression is classified as lvalue.
Is_XValue
attribute
builtin Boolean
Whether this expression is classified as C++11 xvalue.
Converted_To_PRValue
attribute
builtin Boolean
Whether this expression is an lvalue or xvalue that is being implicitly converted to a prvalue.
Start_Position_Index
attribute
builtin SLoc_Index_Type
End_Position_Index
attribute
builtin SLoc_Index_Type
Start_Original_Position
attribute
builtin SLoc
Start_Position
attribute
builtin SLoc
End_Original_Position
attribute
builtin SLoc
End_Position
attribute
builtin SLoc
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