Main Page   Packages   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members  

CFGSkel Class Reference

List of all members.

Public Methods

 CFGSkel ()
void add (Index i)
void addDescendent (Index p, Index c)
void makeArc (Index p, Index c)
void makeArc (Index p, Index c, boolean mark)
void mark (Index i)
void mark (Index i, boolean m)
Index next ()
void start (Index i)
String toString ()
void unmark (Index i)

Protected Attributes

Vector skel

Private Methods

int find (Index i)

Detailed Description

Control flow graph skeleton. This class represents the flow graph and allows a topological search to be performed.

Author:
Shawn Laubach
Version:
0.1

Definition at line 47 of file CFGSkel.java.


Constructor & Destructor Documentation

CFGSkel::CFGSkel   [inline]
 

Constructs a new CFG skeleton. It just creates an empty node list.

Definition at line 105 of file CFGSkel.java.


Member Function Documentation

void CFGSkel::add Index   i [inline]
 

Adds a new index to the skeleton.

Parameters:
i   the index to add.

Definition at line 114 of file CFGSkel.java.

Referenced by addDescendent().

void CFGSkel::addDescendent Index   p,
Index   c
[inline]
 

Adds a descendent to a node.

Parameters:
p   the parent node.
c   the child node.

Definition at line 124 of file CFGSkel.java.

Referenced by makeArc().

int CFGSkel::find Index   i [inline, private]
 

Finds the position of a node.

Parameters:
i   the index to find.
Returns:
The position of the node.

Definition at line 158 of file CFGSkel.java.

Referenced by addDescendent(), mark(), start(), and unmark().

void CFGSkel::makeArc Index   p,
Index   c,
boolean   mark
[inline]
 

Makes an arc and sets the mark of the child to mark.

Parameters:
p   the parent.
c   the child.
mark   the child's mark.

Definition at line 179 of file CFGSkel.java.

void CFGSkel::makeArc Index   p,
Index   c
[inline]
 

Creates a new arc.

Parameters:
p   the parent (start) of the arc.
c   the child of the arc.

Definition at line 168 of file CFGSkel.java.

void CFGSkel::mark Index   i,
boolean   m
[inline]
 

Sets the mark of an index to what is passed.

Parameters:
i   the index.
m   the value to set the mark.

Definition at line 212 of file CFGSkel.java.

void CFGSkel::mark Index   i [inline]
 

Marks the index.

Parameters:
i   the index to mark.

Definition at line 189 of file CFGSkel.java.

Referenced by makeArc().

Index CFGSkel::next   [inline]
 

Gets the next unmarked index using a topological sort.

Returns:
The next unmarked index.

Definition at line 234 of file CFGSkel.java.

void CFGSkel::start Index   i [inline]
 

Sets the index to the starting point.

Parameters:
i   the index.

Definition at line 264 of file CFGSkel.java.

void CFGSkel::unmark Index   i [inline]
 

Unmarks an index.

Parameters:
i   the index.

Definition at line 290 of file CFGSkel.java.

Referenced by start().


Member Data Documentation

Vector CFGSkel::skel [protected]
 

The list of nodes that comprise the skeleton. The first one is the head of the skeleton.

Definition at line 99 of file CFGSkel.java.


The documentation for this class was generated from the following file:
Generated at Thu Feb 7 07:06:02 2002 for Bandera by doxygen1.2.10 written by Dimitri van Heesch, © 1997-2001