![]() |
PandA-2024.02
|
#include <tree_nodes_merger.hpp>


Public Member Functions | |
| tree_node_index_factory (CustomUnorderedMapUnstable< unsigned int, unsigned int > &_remap, const tree_managerRef _TM) | |
| default constructor More... | |
| void | create_tree_node (const unsigned int node_id, const tree_nodeRef &tn) |
| tree_node visitors More... | |
Public Member Functions inherited from object_visitor | |
| virtual | ~object_visitor () |
| destructor More... | |
| BOOST_PP_SEQ_FOR_EACH (OPERATOR_MACRO, BOOST_PP_EMPTY, VISITED_OBJ_SEQ1) | |
| virtual template object functor More... | |
| BOOST_PP_SEQ_FOR_EACH (OPERATOR_MACRO, BOOST_PP_EMPTY, VISITED_OBJ_SEQ2) | |
Private Attributes | |
| CustomUnorderedMapUnstable< unsigned int, unsigned int > & | remap |
| remap old indexes in new indexes More... | |
| const tree_managerRef | TM |
| tree manager More... | |
| tree_node * | curr_tree_node_ptr |
| current tree node filled according to the tree_node_schema More... | |
| bloc * | curr_bloc |
| current basic block pointer More... | |
| tree_nodeRef | source_tn |
| current tree_node source More... | |
| blocRef | source_bloc |
| current basic block source More... | |
Definition at line 84 of file tree_nodes_merger.hpp.
|
inline |
default constructor
Definition at line 87 of file tree_nodes_merger.hpp.
References object_visitor::BOOST_PP_SEQ_FOR_EACH(), OBJ_NOT_SPECIALIZED_SEQ, OBJ_SPECIALIZED_SEQ, OPERATOR_MACRO, and OPERATOR_MACRO_DECL.

| void tree_node_index_factory::create_tree_node | ( | const unsigned int | node_id, |
| const tree_nodeRef & | tn | ||
| ) |
tree_node visitors
Factory method. It creates a tree_node of type equal to the type of tn where all the fields are remapped according the remap relation passed to the constructor
| node_id | is the node id of the created object. |
| tn | is the starting tree node |
special care is reserved for identifier_nodes
Definition at line 868 of file tree_nodes_merger.cpp.
References ATTR_MACRO, ATTR_SEQ, object_visitor::BOOST_PP_SEQ_FOR_EACH(), CREATE_TREE_NODE_CASE_BODY, refcount< T >::get(), tree_node::get_kind(), tree_node::get_kind_text(), template_id_expr(), THROW_ASSERT, THROW_ERROR, tree_node_reached::TM, typename_type(), and using_decl().
Referenced by tree_manager::merge_tree_managers().


|
private |
current basic block pointer
Definition at line 114 of file tree_nodes_merger.hpp.
|
private |
current tree node filled according to the tree_node_schema
Definition at line 112 of file tree_nodes_merger.hpp.
|
private |
remap old indexes in new indexes
Definition at line 106 of file tree_nodes_merger.hpp.
|
private |
current basic block source
Definition at line 118 of file tree_nodes_merger.hpp.
|
private |
current tree_node source
Definition at line 116 of file tree_nodes_merger.hpp.
|
private |
tree manager
Definition at line 109 of file tree_nodes_merger.hpp.
1.8.13