|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectsoot.javaToJimple.InitialResolver
Constructor Summary | |
InitialResolver(soot.Singletons.Global g)
|
Method Summary | |
protected void |
addNameToAST(String name)
add name to AST to map - used mostly for inner and non public top-level classes |
void |
addToAnonConstructorMap(polyglot.ast.New anonNew,
polyglot.types.ConstructorInstance ci)
|
void |
addToPrivateFieldGetAccessMap(polyglot.ast.Field field,
SootMethod meth)
|
void |
addToPrivateFieldSetAccessMap(polyglot.ast.Field field,
SootMethod meth)
|
void |
addToPrivateMethodGetAccessMap(polyglot.ast.Call call,
SootMethod meth)
|
protected HashMap |
classToSourceMap()
|
HashMap |
finalLocalInfo()
|
void |
formAst(String fullPath,
List locations)
Invokes polyglot and gets the AST for the source given in fullPath |
BiMap |
getAnonClassMap()
|
HashMap |
getAnonTypeMap()
|
polyglot.ast.Node |
getAst()
|
polyglot.types.ConstructorInstance |
getConstructorForAnon(polyglot.ast.New anonNew)
|
ArrayList |
getHasOuterRefInInit()
|
HashMap |
getInnerClassInfoMap()
|
ArrayList |
getInterfacesList()
|
AbstractJBBFactory |
getJBBFactory()
|
BiMap |
getLocalClassMap()
|
HashMap |
getLocalTypeMap()
|
protected int |
getNextAnonNum()
|
int |
getNextPrivateAccessCounter()
|
HashMap |
getPrivateFieldGetAccessMap()
|
HashMap |
getPrivateFieldSetAccessMap()
|
HashMap |
getPrivateMethodGetAccessMap()
|
boolean |
hasASTForSootName(String name)
returns true if there is an AST avail for given soot class |
boolean |
hasClassInnerTag(SootClass sc,
String innerName)
|
FastHierarchy |
hierarchy()
|
void |
hierarchy(FastHierarchy fh)
|
boolean |
isAnonInCCall(polyglot.types.ClassType anonType)
|
void |
resolveAST()
|
List |
resolveFromJavaFile(SootClass sc)
|
void |
setAst(polyglot.ast.Node ast)
if you have a special AST set it here then call resolveFormJavaFile on the soot class |
void |
setASTForSootName(String name)
sets AST for given soot class if possible |
void |
setHasOuterRefInInit(ArrayList list)
|
void |
setInnerClassInfoMap(HashMap map)
|
void |
setJBBFactory(AbstractJBBFactory jbbFactory)
|
void |
setSpecialAnonMap(HashMap map)
|
HashMap |
specialAnonMap()
|
static InitialResolver |
v()
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
public InitialResolver(soot.Singletons.Global g)
Method Detail |
public void addToAnonConstructorMap(polyglot.ast.New anonNew, polyglot.types.ConstructorInstance ci)
public polyglot.types.ConstructorInstance getConstructorForAnon(polyglot.ast.New anonNew)
public void setJBBFactory(AbstractJBBFactory jbbFactory)
public AbstractJBBFactory getJBBFactory()
public boolean hasASTForSootName(String name)
public void setASTForSootName(String name)
public static InitialResolver v()
public void formAst(String fullPath, List locations)
public void setAst(polyglot.ast.Node ast)
public polyglot.ast.Node getAst()
protected void addNameToAST(String name)
public void resolveAST()
public List resolveFromJavaFile(SootClass sc)
protected int getNextAnonNum()
public boolean hasClassInnerTag(SootClass sc, String innerName)
public boolean isAnonInCCall(polyglot.types.ClassType anonType)
public BiMap getAnonClassMap()
public BiMap getLocalClassMap()
public HashMap getAnonTypeMap()
public HashMap getLocalTypeMap()
public HashMap finalLocalInfo()
public int getNextPrivateAccessCounter()
public ArrayList getHasOuterRefInInit()
public void setHasOuterRefInInit(ArrayList list)
public HashMap specialAnonMap()
public void setSpecialAnonMap(HashMap map)
public void hierarchy(FastHierarchy fh)
public FastHierarchy hierarchy()
public HashMap getInnerClassInfoMap()
public void setInnerClassInfoMap(HashMap map)
protected HashMap classToSourceMap()
public void addToPrivateFieldGetAccessMap(polyglot.ast.Field field, SootMethod meth)
public HashMap getPrivateFieldGetAccessMap()
public void addToPrivateFieldSetAccessMap(polyglot.ast.Field field, SootMethod meth)
public HashMap getPrivateFieldSetAccessMap()
public void addToPrivateMethodGetAccessMap(polyglot.ast.Call call, SootMethod meth)
public HashMap getPrivateMethodGetAccessMap()
public ArrayList getInterfacesList()
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |