jist.swans
Class Rewriter

java.lang.Object
  extended by jist.swans.Rewriter
All Implemented Interfaces:
JistAPI.CustomRewriter

public class Rewriter
extends java.lang.Object
implements JistAPI.CustomRewriter

Add-on SWANS-specific JiST rewriter module.

Since:
SWANS1.0

Nested Class Summary
static class Rewriter.ModifyTypeTraversal
          Class traversal that substitutes types in all the common places.
 
Field Summary
protected  jist.swans.Rewriter.ModifyTypeInfo[] typeModifications
           
 
Constructor Summary
Rewriter()
           
 
Method Summary
static boolean isIgnored(java.lang.String classname)
          Whether class is ignored by SWANS rewriter.
 org.apache.bcel.classfile.JavaClass process(org.apache.bcel.classfile.JavaClass jcl)
          Perform rewriter pass of BCEL JavaClass object.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

typeModifications

protected jist.swans.Rewriter.ModifyTypeInfo[] typeModifications
Constructor Detail

Rewriter

public Rewriter()
Method Detail

process

public org.apache.bcel.classfile.JavaClass process(org.apache.bcel.classfile.JavaClass jcl)
                                            throws java.lang.ClassNotFoundException
Perform rewriter pass of BCEL JavaClass object.

Specified by:
process in interface JistAPI.CustomRewriter
Parameters:
jcl - BCEL JavaClass object to rewrite
Returns:
rewritten/transformed BCEL JavaClass object
Throws:
java.lang.ClassNotFoundException

isIgnored

public static boolean isIgnored(java.lang.String classname)
Whether class is ignored by SWANS rewriter.

Parameters:
classname - qualified name of class to check
Returns:
whether class is ignored by SWANS rewriter