soot.toolkits.scalar
Class LocalSplitter
java.lang.Object
soot.Transformer
soot.BodyTransformer
soot.toolkits.scalar.LocalSplitter
public class LocalSplitter
- extends BodyTransformer
A BodyTransformer that attemps to indentify and separate uses of a local
varible that are independent of each other. Conceptually the inverse transform
with respect to the LocalPacker transform.
For example the code:
for(int i; i < k; i++);
for(int i; i < k; i++);
would be transformed into:
for(int i; i < k; i++);
for(int j; j < k; j++);
- See Also:
BodyTransformer
,
LocalPacker
,
Body
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
LocalSplitter
public LocalSplitter(Singletons.Global g)
v
public static LocalSplitter v()
internalTransform
protected void internalTransform(Body body,
String phaseName,
Map options)
- Description copied from class:
BodyTransformer
- This method is called to perform the transformation itself. It is declared
abstract; subclasses must implement this method by making it the entry point
to their actual Body transformation.
- Specified by:
internalTransform
in class BodyTransformer
- Parameters:
body
- the body on which to apply the transformationphaseName
- the phasename for this transform; not typically used by implementations.options
- the actual computed options; a combination of default options and Scene specified options.