cprover
|
#include <class_hierarchy.h>
Classes | |
class | entryt |
Public Types | |
typedef std::vector< irep_idt > | idst |
typedef std::map< irep_idt, entryt > | class_mapt |
Public Member Functions | |
void | operator() (const symbol_tablet &) |
Looks for all the struct types in the symbol table and construct a map from class names to a data structure that contains lists of parent and child classes for each struct type (ie class). More... | |
idst | get_children_trans (const irep_idt &id) const |
idst | get_parents_trans (const irep_idt &id) const |
void | output (std::ostream &) const |
Public Attributes | |
class_mapt | class_map |
Protected Member Functions | |
void | get_children_trans_rec (const irep_idt &, idst &) const |
void | get_parents_trans_rec (const irep_idt &, idst &) const |
Definition at line 22 of file class_hierarchy.h.
typedef std::map<irep_idt, entryt> class_hierarchyt::class_mapt |
Definition at line 33 of file class_hierarchy.h.
typedef std::vector<irep_idt> class_hierarchyt::idst |
Definition at line 25 of file class_hierarchy.h.
Definition at line 39 of file class_hierarchy.h.
References get_children_trans_rec().
Referenced by get_virtual_method_targets(), and remove_instanceoft::lower_instanceof().
Definition at line 50 of file class_hierarchy.cpp.
References class_hierarchyt::entryt::children, and class_map.
Referenced by get_children_trans(), and get_parents_trans().
Definition at line 47 of file class_hierarchy.h.
References get_children_trans_rec(), get_parents_trans_rec(), and output().
Referenced by initialize_needed_classes(), and taint_analysist::instrument().
Definition at line 67 of file class_hierarchy.cpp.
References class_map, and class_hierarchyt::entryt::parents.
Referenced by get_parents_trans().
void class_hierarchyt::operator() | ( | const symbol_tablet & | symbol_table | ) |
Looks for all the struct types in the symbol table and construct a map from class names to a data structure that contains lists of parent and child classes for each struct type (ie class).
symbol_table | The symbol table to analyze |
Definition at line 25 of file class_hierarchy.cpp.
References class_map, dstringt::empty(), irept::find(), forall_symbols, irept::get_sub(), symbol_tablet::symbols, and to_struct_type().
void class_hierarchyt::output | ( | std::ostream & | out | ) | const |
Definition at line 84 of file class_hierarchy.cpp.
References class_map.
Referenced by get_parents_trans().
class_mapt class_hierarchyt::class_map |
Definition at line 34 of file class_hierarchy.h.
Referenced by remove_virtual_functionst::get_child_functions_rec(), get_children_trans_rec(), remove_virtual_functionst::get_functions(), get_parents_trans_rec(), get_virtual_method_targets(), operator()(), and output().