Class SootUtil
- java.lang.Object
-
- soot.jimple.spark.ondemand.pautil.SootUtil
-
public class SootUtil extends Object
Utility methods for dealing with Soot.- Author:
- manu_s
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classSootUtil.CallSiteAndContextstatic classSootUtil.FieldAccessMapstatic classSootUtil.FieldToEdgesMap
-
Constructor Summary
Constructors Constructor Description SootUtil()
-
Method Summary
-
-
-
Method Detail
-
buildStoreMap
public static SootUtil.FieldAccessMap buildStoreMap(PAG pag)
-
isRetNode
public static boolean isRetNode(VarNode node)
- Parameters:
node-- Returns:
trueifnoderepresents the return value of a method;falseotherwise
-
isParamNode
public static boolean isParamNode(VarNode node)
-
isThisNode
public static boolean isThisNode(VarNode node)
- Parameters:
node-- Returns:
trueifnoderepresents the this parameter of a method;falseotherwise
-
inLibrary
public static boolean inLibrary(String className)
- Parameters:
outerType-- Returns:
-
inLibrary
public static boolean inLibrary(RefType type)
-
isStringNode
public static boolean isStringNode(VarNode node)
-
isExceptionNode
public static boolean isExceptionNode(VarNode node)
- Parameters:
node-- Returns:
-
storesOnField
public static SootUtil.FieldToEdgesMap storesOnField(PAG pag)
-
loadsOnField
public static SootUtil.FieldToEdgesMap loadsOnField(PAG pag)
-
constructIntersection
public static PointsToSetInternal constructIntersection(PointsToSetInternal set1, PointsToSetInternal set2, PAG pag)
-
isThreadGlobal
public static boolean isThreadGlobal(VarNode node)
-
isThreadStartMethod
public static boolean isThreadStartMethod(SootMethod method)
-
hasRecursiveField
public static boolean hasRecursiveField(SootClass sootClass)
-
dumpVarNodeInfo
public static void dumpVarNodeInfo(PAG pag)
-
noRefTypeParameters
public static boolean noRefTypeParameters(SootMethod method)
-
getMainMethod
public static SootMethod getMainMethod()
-
isResolvableCall
public static boolean isResolvableCall(SootMethod invokedMethod)
-
getCallTargets
public static Collection<? extends SootMethod> getCallTargets(Type type, SootMethod invokedMethod)
-
getFreeLiveMemory
public static long getFreeLiveMemory()
-
getAmbiguousMethodByName
public static SootMethod getAmbiguousMethodByName(String methodName)
-
fakeSignature
public static String fakeSignature(String qualifiedName)
This method should be removed soon.- Parameters:
qualifiedName-- Returns:
-
isNewInstanceMethod
public static boolean isNewInstanceMethod(SootMethod method)
-
-