ptolemy.copernicus.java
Class TokenInstanceofEliminator
java.lang.Object
soot.Transformer
soot.BodyTransformer
ptolemy.copernicus.java.TokenInstanceofEliminator
- All Implemented Interfaces:
- soot.HasPhaseOptions
public class TokenInstanceofEliminator
- extends soot.BodyTransformer
- implements soot.HasPhaseOptions
A transformer that removes unnecessary instanceof checks for tokens.
This is similar to CastAndInstanceofEliminator, except here
we use a stronger type inference algorithm that is aware of
Ptolemy token types.
- Since:
- Ptolemy II 2.0
- Version:
- $Id: TokenInstanceofEliminator.java,v 1.44 2006/10/26 21:44:16 cxh Exp $
- Author:
- Stephen Neuendorffer
- Accepted Rating:
- Proposed Rating:
Methods inherited from class soot.BodyTransformer |
transform, transform, transform |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
v
public static TokenInstanceofEliminator v()
getPhaseName
public java.lang.String getPhaseName()
- Specified by:
getPhaseName
in interface soot.HasPhaseOptions
getDefaultOptions
public java.lang.String getDefaultOptions()
- Specified by:
getDefaultOptions
in interface soot.HasPhaseOptions
getDeclaredOptions
public java.lang.String getDeclaredOptions()
- Specified by:
getDeclaredOptions
in interface soot.HasPhaseOptions
internalTransform
protected void internalTransform(soot.Body b,
java.lang.String phaseName,
java.util.Map options)
- Specified by:
internalTransform
in class soot.BodyTransformer
eliminateCastsAndInstanceOf
public static void eliminateCastsAndInstanceOf(soot.Body body,
java.lang.String phaseName,
java.util.Set unsafeLocalSet,
boolean debug)