Main Page   Modules   Namespace List   Class Hierarchy   Compound List   File List   Compound Members   File Members   Related Pages  

vcgASTWalker Class Reference

Inheritance diagram for vcgASTWalker::

vcgWalker Walker List of all members.

Public Methods

 vcgASTWalker (ostream &ostr, const string &comment, string excludefilename)
virtual ~vcgASTWalker (void)

Private Types

typedef pair< Node *, string > Edge
typedef list< EdgeEdges
typedef Edges::iterator Edges_p
typedef map< Node *, EdgesEdge_map

Private Methods

virtual void finalize_graph ()
void print_node (Node *n)
string node_title (Node *n)
string node_label (Node *n)
void print_edge (Node *from, Node *to, string name)
void delayed_print_edge (void)
string node_name (Node *n)
template<class S, class T> void print_edges (S parent, list< T > &children, string name)
void at_unit (unitNode *the_unit, Order ord)
void at_decl (declNode *the_decl, Order ord)
void at_proc (procNode *the_proc, Order ord)
void at_prim (primNode *the_prim, Order ord)
void at_tdef (tdefNode *the_tdef, Order ord)
void at_ptr (ptrNode *the_ptr, Order ord)
void at_array (arrayNode *the_array, Order ord)
void at_func (funcNode *the_func, Order ord)
void at_sue (sueNode *the_sue, Order ord)
void at_suespec (suespecNode *the_suespec, Order ord)
void at_const (constNode *the_const, Order ord)
void at_id (idNode *the_id, Order ord)
void at_binary (binaryNode *the_binary, Order ord)
void at_unary (unaryNode *the_unary, Order ord)
void at_cast (castNode *the_cast, Order ord)
void at_comma (commaNode *the_comma, Order ord)
void at_ternary (ternaryNode *the_ternary, Order ord)
void at_call (callNode *the_call, Order ord)
void at_initializer (initializerNode *the_initializer, Order ord)
void at_block (blockNode *the_block, Order ord)
void at_exprstmt (exprstmtNode *the_exprstmt, Order ord)
void at_label (labelNode *the_label, Order ord)
void at_case (caseNode *the_case, Order ord)
void at_if (ifNode *the_if, Order ord)
void at_switch (switchNode *the_switch, Order ord)
void at_while (whileNode *the_while, Order ord)
void at_do (doNode *the_do, Order ord)
void at_for (forNode *the_for, Order ord)
void at_goto (gotoNode *the_goto, Order ord)
void at_continue (continueNode *the_continue, Order ord)
void at_break (breakNode *the_break, Order ord)
void at_return (returnNode *the_return, Order ord)
void at_attrib (attribNode *the_attrib, Order ord)
void at_text (textNode *the_text, Order ord)

Private Attributes

node_list nodes
Edge_map edges

Member Typedef Documentation

typedef pair<Node*, string> vcgASTWalker::Edge [private]
 

typedef map<Node*,Edges> vcgASTWalker::Edge_map [private]
 

typedef list<Edge> vcgASTWalker::Edges [private]
 

typedef Edges::iterator vcgASTWalker::Edges_p [private]
 


Constructor & Destructor Documentation

vcgASTWalker::vcgASTWalker ostream &    ostr,
const string &    comment,
string    excludefilename
[inline]
 

virtual vcgASTWalker::~vcgASTWalker void    [inline, virtual]
 


Member Function Documentation

void vcgASTWalker::at_array arrayNode   the_array,
Order    ord
[inline, private, virtual]
 

Reimplemented from Walker.

void vcgASTWalker::at_attrib attribNode   the_attrib,
Order    ord
[inline, private, virtual]
 

Reimplemented from Walker.

void vcgASTWalker::at_binary binaryNode   the_binary,
Order    ord
[inline, private, virtual]
 

Reimplemented from Walker.

void vcgASTWalker::at_block blockNode   the_block,
Order    ord
[inline, private, virtual]
 

Reimplemented from Walker.

void vcgASTWalker::at_break breakNode   the_break,
Order    ord
[inline, private, virtual]
 

Reimplemented from Walker.

void vcgASTWalker::at_call callNode   the_call,
Order    ord
[inline, private, virtual]
 

Reimplemented from Walker.

void vcgASTWalker::at_case caseNode   the_case,
Order    ord
[inline, private, virtual]
 

Reimplemented from Walker.

void vcgASTWalker::at_cast castNode   the_cast,
Order    ord
[inline, private, virtual]
 

Reimplemented from Walker.

void vcgASTWalker::at_comma commaNode   the_comma,
Order    ord
[inline, private, virtual]
 

Reimplemented from Walker.

void vcgASTWalker::at_const constNode   the_const,
Order    ord
[inline, private, virtual]
 

Reimplemented from Walker.

void vcgASTWalker::at_continue continueNode   the_continue,
Order    ord
[inline, private, virtual]
 

Reimplemented from Walker.

void vcgASTWalker::at_decl declNode   the_decl,
Order    ord
[inline, private, virtual]
 

Reimplemented from Walker.

void vcgASTWalker::at_do doNode   the_do,
Order    ord
[inline, private, virtual]
 

Reimplemented from Walker.

void vcgASTWalker::at_exprstmt exprstmtNode   the_exprstmt,
Order    ord
[inline, private, virtual]
 

Reimplemented from Walker.

void vcgASTWalker::at_for forNode   the_for,
Order    ord
[inline, private, virtual]
 

Reimplemented from Walker.

void vcgASTWalker::at_func funcNode   the_func,
Order    ord
[inline, private, virtual]
 

Reimplemented from Walker.

void vcgASTWalker::at_goto gotoNode   the_goto,
Order    ord
[inline, private, virtual]
 

Reimplemented from Walker.

void vcgASTWalker::at_id idNode   the_id,
Order    ord
[inline, private, virtual]
 

Reimplemented from Walker.

void vcgASTWalker::at_if ifNode   the_if,
Order    ord
[inline, private, virtual]
 

Reimplemented from Walker.

void vcgASTWalker::at_initializer initializerNode   the_initializer,
Order    ord
[inline, private, virtual]
 

Reimplemented from Walker.

void vcgASTWalker::at_label labelNode   the_label,
Order    ord
[inline, private, virtual]
 

Reimplemented from Walker.

void vcgASTWalker::at_prim primNode   the_prim,
Order    ord
[inline, private, virtual]
 

Reimplemented from Walker.

void vcgASTWalker::at_proc procNode   the_proc,
Order    ord
[inline, private, virtual]
 

Reimplemented from vcgWalker.

void vcgASTWalker::at_ptr ptrNode   the_ptr,
Order    ord
[inline, private, virtual]
 

Reimplemented from Walker.

void vcgASTWalker::at_return returnNode   the_return,
Order    ord
[inline, private, virtual]
 

Reimplemented from Walker.

void vcgASTWalker::at_sue sueNode   the_sue,
Order    ord
[inline, private, virtual]
 

Reimplemented from Walker.

void vcgASTWalker::at_suespec suespecNode   the_suespec,
Order    ord
[inline, private, virtual]
 

Reimplemented from Walker.

void vcgASTWalker::at_switch switchNode   the_switch,
Order    ord
[inline, private, virtual]
 

Reimplemented from Walker.

void vcgASTWalker::at_tdef tdefNode   the_tdef,
Order    ord
[inline, private, virtual]
 

Reimplemented from Walker.

void vcgASTWalker::at_ternary ternaryNode   the_ternary,
Order    ord
[inline, private, virtual]
 

Reimplemented from Walker.

void vcgASTWalker::at_text textNode   the_text,
Order    ord
[inline, private, virtual]
 

Reimplemented from Walker.

void vcgASTWalker::at_unary unaryNode   the_unary,
Order    ord
[inline, private, virtual]
 

Reimplemented from Walker.

void vcgASTWalker::at_unit unitNode   the_unit,
Order    ord
[inline, private, virtual]
 

Reimplemented from Walker.

void vcgASTWalker::at_while whileNode   the_while,
Order    ord
[inline, private, virtual]
 

Reimplemented from Walker.

void vcgASTWalker::delayed_print_edge void    [inline, private]
 

virtual void vcgASTWalker::finalize_graph   [inline, private, virtual]
 

Reimplemented from vcgWalker.

string vcgASTWalker::node_label Node   n [inline, private]
 

string vcgASTWalker::node_name Node   n [inline, private]
 

string vcgASTWalker::node_title Node   n [inline, private]
 

void vcgASTWalker::print_edge Node   from,
Node   to,
string    name
[inline, private]
 

template<class S, class T>
void vcgASTWalker::print_edges   parent,
list< T > &    children,
string    name
[inline, private]
 

void vcgASTWalker::print_node Node   n [inline, private]
 


Member Data Documentation

Edge_map vcgASTWalker::edges [private]
 

node_list vcgASTWalker::nodes [private]
 


The documentation for this class was generated from the following file:
Generated on Thu Jan 10 12:06:35 2002 for C-Breeze by doxygen1.2.13.1 written by Dimitri van Heesch, © 1997-2001