edu.uci.eecs.doc.cascade.graph
Class EdgeLabelProvider

java.lang.Object
  extended by edu.uci.eecs.doc.cascade.graph.EdgeLabelProvider
All Implemented Interfaces:
EdgeNameProvider<Edge>

public class EdgeLabelProvider
extends Object
implements EdgeNameProvider<Edge>

Generates descriptive labels for edges in a control flow graph.

Author:
Trevor Harmon

Constructor Summary
EdgeLabelProvider(EdgeNameProvider<Edge> idProvider)
          Creates a new EdgeLabelProvider object using the given ID provider as a backup.
 
Method Summary
 String getEdgeName(Edge edge)
          Generates a label corresponding to the given edge of a control flow graph.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

EdgeLabelProvider

public EdgeLabelProvider(EdgeNameProvider<Edge> idProvider)
Creates a new EdgeLabelProvider object using the given ID provider as a backup.

Parameters:
idProvider - a provider of edge IDs
Method Detail

getEdgeName

public String getEdgeName(Edge edge)
Generates a label corresponding to the given edge of a control flow graph. Outgoing edges of branching nodes are given the appropriate "true" and "false" labels; all others have simple ID labels.

Specified by:
getEdgeName in interface EdgeNameProvider<Edge>
Parameters:
edge - an edge in the control flow graph
Returns:
a descriptive label of the edge