soot.jimple.spark.solver
Class SCCCollapser

java.lang.Object
  extended by soot.jimple.spark.solver.SCCCollapser

public class SCCCollapser
extends Object

Collapses VarNodes (green) forming strongly-connected components in the pointer assignment graph.

Author:
Ondrej Lhotak

Field Summary
protected  boolean ignoreTypes
           
protected  int numCollapsed
           
protected  PAG pag
           
protected  TypeManager typeManager
           
protected  HashSet<VarNode> visited
           
 
Constructor Summary
SCCCollapser(PAG pag, boolean ignoreTypes)
           
 
Method Summary
 void collapse()
          Actually collapse the SCCs in the PAG.
protected  void dfsVisit(VarNode v, VarNode rootOfSCC)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

numCollapsed

protected int numCollapsed

pag

protected PAG pag

visited

protected HashSet<VarNode> visited

ignoreTypes

protected boolean ignoreTypes

typeManager

protected TypeManager typeManager
Constructor Detail

SCCCollapser

public SCCCollapser(PAG pag,
                    boolean ignoreTypes)
Method Detail

collapse

public void collapse()
Actually collapse the SCCs in the PAG.


dfsVisit

protected final void dfsVisit(VarNode v,
                              VarNode rootOfSCC)