|  | PandA-2024.02
    | 
Represents an expression that will be expanded into a list of expressions when instantiated with one or more argument packs. More...
#include <tree_node.hpp>


| Public Types | |
| enum | { GETID =(expr_node) = 0, GETID =(expr_node) = 0, GETID =(expr_node) = 0 } | 
| visitor enum  More... | |
|  Public Types inherited from expr_node | |
| enum | { GETID =(srcp) = 0, GETID =(srcp) = 0 } | 
| visitor enum  More... | |
|  Public Types inherited from WeightedNode | |
| enum | { GETID =(tree_node) = 0 } | 
| visitor enum  More... | |
| Public Member Functions | |
| expr_pack_expansion (unsigned int i) | |
| constructor  More... | |
| void | visit (tree_node_visitor *const v) const override | 
| Redefinition of get_kind_text.  More... | |
|  Public Member Functions inherited from expr_node | |
| expr_node (unsigned int i) | |
| constructor  More... | |
|  Public Member Functions inherited from srcp | |
| srcp () | |
| constructor  More... | |
| virtual | ~srcp () | 
| Destructor.  More... | |
|  Public Member Functions inherited from WeightedNode | |
| WeightedNode (unsigned int i) | |
| Constructor.  More... | |
|  Public Member Functions inherited from tree_node | |
| tree_node (unsigned int i) | |
| Constructor.  More... | |
| virtual | ~tree_node ()=default | 
| Destructor.  More... | |
| virtual enum kind | get_kind () const =0 | 
| Virtual function returning the type of the actual class.  More... | |
| virtual std::string | get_kind_text () const =0 | 
| Virtual function returning the name of the actual class.  More... | |
| std::string | ToString () const | 
| Print this node as string in gimple format.  More... | |
| Data Fields | |
| tree_nodeRef | op | 
| PACK_EXPANSION_PATTERN.  More... | |
| tree_nodeRef | param_packs | 
| PACK_EXPANSION_PARAMETER_PACKS.  More... | |
| tree_nodeRef | arg | 
| PACK_EXPANSION_EXTRA_ARGS.  More... | |
|  Data Fields inherited from expr_node | |
| tree_nodeRef | type | 
| type of the expression  More... | |
|  Data Fields inherited from srcp | |
| std::string | include_name | 
| include_name is a filename string, this can be the location of a reference, if no definition has been seen.  More... | |
| unsigned int | line_number | 
| line_number holds a line number.  More... | |
| unsigned int | column_number | 
| column_number holds the column number.  More... | |
|  Data Fields inherited from tree_node | |
| const unsigned int | index | 
| Represent the index read from the raw file and the index-1 of the vector of tree_node associated to the functions vector present in the tree_manager.  More... | |
| Additional Inherited Members | |
|  Static Public Member Functions inherited from tree_node | |
| static enum kind | get_kind (const std::string &name) | 
| Given a string, return the corresponding kind.  More... | |
| static std::string | GetString (const enum kind k) | 
| Given a kind, return the corresponding string.  More... | |
Represents an expression that will be expanded into a list of expressions when instantiated with one or more argument packs.
EXPR_PACK_EXPANSION plays precisely the same role as TYPE_PACK_EXPANSION, but will be used for expressions.
Definition at line 2186 of file tree_node.hpp.
| anonymous enum | 
| 
 | inlineexplicit | 
constructor
Definition at line 2189 of file tree_node.hpp.
| 
 | overridevirtual | 
Redefinition of get_kind_text.
Redefinition of get_kind. virtual function used to traverse the tree_node data structure.
| v | is a reference to the tree_node visitor class | 
Reimplemented from expr_node.
Definition at line 1602 of file tree_node.cpp.
References ALL_VISIT, test_panda::arg, tree_node::index, TreeNodeConstSorter::TreeNodeConstSorter(), var_decl::visit(), VISIT_MEMBER, VISIT_SC, and x.

| tree_nodeRef expr_pack_expansion::arg | 
PACK_EXPANSION_EXTRA_ARGS.
Definition at line 2200 of file tree_node.hpp.
Referenced by GimpleWriter::GimpleWriter(), and raw_writer::write_when_not_null_point_to().
| tree_nodeRef expr_pack_expansion::op | 
PACK_EXPANSION_PATTERN.
Definition at line 2194 of file tree_node.hpp.
Referenced by GimpleWriter::GimpleWriter(), and raw_writer::write_when_not_null_point_to().
| tree_nodeRef expr_pack_expansion::param_packs | 
PACK_EXPANSION_PARAMETER_PACKS.
Definition at line 2197 of file tree_node.hpp.
Referenced by GimpleWriter::GimpleWriter(), and raw_writer::write_when_not_null_point_to().
 1.8.13
 1.8.13