CBMC
Loading...
Searching...
No Matches
Classes | Public Types | Public Member Functions | Public Attributes | Protected Member Functions | List of all members
class_hierarchyt Class Reference

Non-graph-based representation of the class hierarchy. More...

#include <class_hierarchy.h>

+ Collaboration diagram for class_hierarchyt:

Classes

class   entryt
 

Public Types

typedef std::vector< irep_idtidst
 
 

Public Member Functions

  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).
 
 
 
 
 
 
 
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.
 
  Output the class hierarchy in JSON format.
 

Public Attributes

 

Protected Member Functions

 
  Get all the classes that class c inherits from (directly or indirectly).
 

Detailed Description

Non-graph-based representation of the class hierarchy.

Deprecated:
class_hierarchy_grapht is a more advanced graph-based representation of the class hierarchy and its use is preferred over class_hierarchy_classt.

Definition at line 40 of file class_hierarchy.h.

Member Typedef Documentation

◆  class_mapt

Definition at line 52 of file class_hierarchy.h.

◆  idst

Definition at line 43 of file class_hierarchy.h.

Constructor & Destructor Documentation

◆  class_hierarchyt() [1/3]

class_hierarchyt::class_hierarchyt ( )
default

◆  class_hierarchyt() [2/3]

class_hierarchyt::class_hierarchyt ( const symbol_table_basetsymbol_table )
inlineexplicit

Definition at line 58 of file class_hierarchy.h.

◆  class_hierarchyt() [3/3]

class_hierarchyt::class_hierarchyt ( const class_hierarchyt &  )
delete

Member Function Documentation

◆  get_children_trans()

idst class_hierarchyt::get_children_trans ( const irep_idtid ) const
inline

Definition at line 66 of file class_hierarchy.h.

◆  get_children_trans_rec()

void class_hierarchyt::get_children_trans_rec ( const irep_idtc,
idstdest 
) const
protected

Definition at line 129 of file class_hierarchy.cpp.

◆  get_parents_trans()

idst class_hierarchyt::get_parents_trans ( const irep_idtid ) const
inline

Definition at line 74 of file class_hierarchy.h.

◆  get_parents_trans_rec()

void class_hierarchyt::get_parents_trans_rec ( const irep_idtc,
idstdest 
) const
protected

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

Parameters
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.

◆  operator()()

void class_hierarchyt::operator() ( const symbol_table_basetsymbol_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).

Parameters
symbol_table The symbol table to analyze

Definition at line 150 of file class_hierarchy.cpp.

◆  operator=()

class_hierarchyt & class_hierarchyt::operator= ( const class_hierarchyt &  )
delete

◆  output() [1/2]

void class_hierarchyt::output ( json_stream_arraytjson_stream,
bool  children_only 
) const

Output the class hierarchy in JSON format.

Parameters
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.

◆  output() [2/2]

void class_hierarchyt::output ( std::ostream &  out,
bool  children_only 
) const

Output the class hierarchy in plain text.

Parameters
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.

◆  output_dot()

void class_hierarchyt::output_dot ( std::ostream &  ostr ) const

Output class hierarchy in Graphviz DOT format.

Parameters
ostr stream to write DOT to

Definition at line 218 of file class_hierarchy.cpp.

Member Data Documentation

◆  class_map

class_mapt class_hierarchyt::class_map

Definition at line 53 of file class_hierarchy.h.


The documentation for this class was generated from the following files:

AltStyle によって変換されたページ (->オリジナル) /