|
cprover
|
Non-graph-based representation of the class hierarchy. More...
#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_table_baset &) |
| 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). | |
| class_hierarchyt ()=default | |
| class_hierarchyt (const symbol_table_baset &symbol_table) | |
| class_hierarchyt (const class_hierarchyt &)=delete | |
| class_hierarchyt & | operator= (const class_hierarchyt &)=delete |
| idst | get_children_trans (const irep_idt &id) const |
| idst | get_parents_trans (const irep_idt &id) const |
| void | output (std::ostream &, bool children_only) const |
| Output the class hierarchy in plain text. | |
| void | output_dot (std::ostream &) const |
| Output class hierarchy in Graphviz DOT format. | |
| void | output (json_stream_arrayt &, bool children_only) const |
| Output the class hierarchy in JSON format. | |
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 |
| Get all the classes that class c inherits from (directly or indirectly). | |
Non-graph-based representation of the class hierarchy.
Definition at line 40 of file class_hierarchy.h.
| typedef std::map<irep_idt, entryt> class_hierarchyt::class_mapt |
Definition at line 52 of file class_hierarchy.h.
| typedef std::vector<irep_idt> class_hierarchyt::idst |
Definition at line 43 of file class_hierarchy.h.
|
default |
|
inlineexplicit |
Definition at line 58 of file class_hierarchy.h.
|
delete |
Definition at line 66 of file class_hierarchy.h.
Definition at line 129 of file class_hierarchy.cpp.
Definition at line 74 of file class_hierarchy.h.
Get all the classes that class c inherits from (directly or indirectly).
The first element(s) will be the immediate parents of c, though after this the order is all the parents of the first immediate parent
| c | The class to consider | |
| [out] | dest | A list of class ids that c eventually inherits from. |
Definition at line 179 of file class_hierarchy.cpp.
| void class_hierarchyt::operator() | ( | const symbol_table_baset & | 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 150 of file class_hierarchy.cpp.
|
delete |
| void class_hierarchyt::output | ( | json_stream_arrayt & | json_stream, |
| bool | children_only ) const |
Output the class hierarchy in JSON format.
| json_stream | the output JSON stream array |
| children_only | print the children only and do not print the parents |
Definition at line 239 of file class_hierarchy.cpp.
| void class_hierarchyt::output | ( | std::ostream & | out, |
| bool | children_only ) const |
Output the class hierarchy in plain text.
| out | the output stream |
| children_only | print the children only and do not print the parents |
Definition at line 199 of file class_hierarchy.cpp.
| void class_hierarchyt::output_dot | ( | std::ostream & | ostr | ) | const |
Output class hierarchy in Graphviz DOT format.
| ostr | stream to write DOT to |
Definition at line 218 of file class_hierarchy.cpp.
| class_mapt class_hierarchyt::class_map |
Definition at line 53 of file class_hierarchy.h.