Irregular_Elifdef

class Irregular_Elifdef (concrete, physical)

the #elifdef of the C preprocessor

Implemented interfaces:
Direct parents:
Ancestor classes and implemented interfaces:

Conditional_Compilation_Interface, Elif_Interface, End_Information, Ifdef_Ifndef_Interface, Ifdef_Interface, Irregular_Conditional_Compilation, Meta_Information, Physical_IR_Root, Preprocessor

Field

Kind

Type

Description

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

Condition (from Ifdef_Ifndef_Interface)

syntactic

class Macro_Use

Else_Position (from Conditional_Compilation_Interface)

attribute

builtin SLoc

position of #else, if any (otherwise no_sloc). If from macro expansion, this location is that of the macro expansion

Original_Else_Position (from Conditional_Compilation_Interface)

attribute

builtin SLoc

position of #``else``, if any (otherwise no_sloc). If from macro expansion, this location is inside the macro body or macro argument

Original_Else_Position_Index (from Conditional_Compilation_Interface)

attribute

builtin SLoc_Index_Type

Internal index for position of #else, if any (otherwise no_sloc)

Condition_Value (from Conditional_Compilation_Interface)

attribute

builtin Boolean

Whether the condition evaluated to true

After_Active_Section (from Elif_Interface)

attribute

builtin Boolean

Whether this node is an #elif that comes after another #if/#ifdef/#elif that was already taken. If this attribute is set, the condition of this #elif is ignored, and neither branch is taken.

Original_End_Position_Index (from End_Information)

attribute

builtin SLoc_Index_Type

Internal source location info of the end of the construct. If from macro expansion, this location is inside the macro body or macro argument

Original_End_Position (from End_Information)

attribute

builtin SLoc

Source location of the end of the construct. If from macro expansion, this location is inside the macro body or macro argument

End_Position (from End_Information)

attribute

builtin SLoc

Source location of the end of the construct. If from macro expansion, this location is that of the macro expansion