KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > quilt > cl > GraphXformer


1 /* GraphXformer.java */
2 package org.quilt.cl;
3
4 import org.apache.bcel.generic.ClassGen;
5 import org.apache.bcel.generic.MethodGen;
6
7 /**
8  * Transform the graph, possibly using information from ClassGen
9  * and MethodGen. If fatal errors occur, transformers must issue
10  * a warning message on System.err and either undo any changes or
11  * set cfg to null.
12  *
13  * @author <a HREF="jddixon@users.sourceforge.net">Jim Dixon</a>
14  */

15 public interface GraphXformer {
16     
17     /**
18      * Apply the transformation to the graph.
19      *
20      * @param cg The class being transformed.
21      * @param method MethodGen for the method being transformed.
22      * @param cfg The method's control flow graph.
23      */

24     public void xform (final ClassGen cg, final MethodGen method,
25                                           final ControlFlowGraph cfg);
26     /**
27      * Get the name for the transformation. This is a static and so
28      * can't be declared here, but implement it.
29      */

30     // public static String getName();
31

32     /**
33      * Set a name for the transformation, to allow reports to refer
34      * to it.
35      */

36     // public static void setName(String name);
37
}
38
Popular Tags