public class SootUtil
extends java.lang.Object
Modifier and Type | Class and Description |
---|---|
static class |
SootUtil.CallSiteAndContext |
static class |
SootUtil.FieldAccessMap |
static class |
SootUtil.FieldToEdgesMap |
Constructor and Description |
---|
SootUtil() |
Modifier and Type | Method and Description |
---|---|
static SootUtil.FieldAccessMap |
buildStoreMap(PAG pag) |
static PointsToSetInternal |
constructIntersection(PointsToSetInternal set1,
PointsToSetInternal set2,
PAG pag) |
static java.lang.String |
createDirIfNotExist(java.lang.String dirName) |
static void |
dumpVarNodeInfo(PAG pag) |
static java.lang.String |
fakeSignature(java.lang.String qualifiedName)
This method should be removed soon.
|
static SootMethod |
getAmbiguousMethodByName(java.lang.String methodName) |
static java.util.Collection<? extends SootMethod> |
getCallTargets(Type type,
SootMethod invokedMethod) |
static java.lang.String |
getClassName(java.lang.String qualifiedName) |
static long |
getFreeLiveMemory() |
static SootMethod |
getMainMethod() |
static java.lang.String |
getMethodName(java.lang.String qualifiedName) |
static boolean |
hasRecursiveField(SootClass sootClass) |
static boolean |
inLibrary(RefType type) |
static boolean |
inLibrary(java.lang.String className) |
static boolean |
isExceptionNode(VarNode node) |
static boolean |
isNewInstanceMethod(SootMethod method) |
static boolean |
isParamNode(VarNode node) |
static boolean |
isResolvableCall(SootMethod invokedMethod) |
static boolean |
isRetNode(VarNode node) |
static boolean |
isStringNode(VarNode node) |
static boolean |
isThisNode(VarNode node) |
static boolean |
isThreadGlobal(VarNode node) |
static boolean |
isThreadStartMethod(SootMethod method) |
static SootUtil.FieldToEdgesMap |
loadsOnField(PAG pag) |
static boolean |
noRefTypeParameters(SootMethod method) |
static void |
printNodeNumberMapping(java.lang.String fileName,
PAG pag) |
static SootUtil.FieldToEdgesMap |
storesOnField(PAG pag) |
public static SootUtil.FieldAccessMap buildStoreMap(PAG pag)
public static boolean isRetNode(VarNode node)
node
- true
if node
represents the return
value of a method; false
otherwisepublic static boolean isParamNode(VarNode node)
public static boolean isThisNode(VarNode node)
node
- true
if node
represents the this
parameter of a method; false
otherwisepublic static boolean inLibrary(java.lang.String className)
outerType
- public static boolean inLibrary(RefType type)
public static boolean isStringNode(VarNode node)
public static boolean isExceptionNode(VarNode node)
node
- public static SootUtil.FieldToEdgesMap storesOnField(PAG pag)
public static SootUtil.FieldToEdgesMap loadsOnField(PAG pag)
public static PointsToSetInternal constructIntersection(PointsToSetInternal set1, PointsToSetInternal set2, PAG pag)
public static boolean isThreadGlobal(VarNode node)
public static boolean isThreadStartMethod(SootMethod method)
public static boolean hasRecursiveField(SootClass sootClass)
public static void dumpVarNodeInfo(PAG pag)
public static boolean noRefTypeParameters(SootMethod method)
public static SootMethod getMainMethod()
public static boolean isResolvableCall(SootMethod invokedMethod)
public static java.util.Collection<? extends SootMethod> getCallTargets(Type type, SootMethod invokedMethod)
public static java.lang.String createDirIfNotExist(java.lang.String dirName)
public static long getFreeLiveMemory()
public static void printNodeNumberMapping(java.lang.String fileName, PAG pag)
public static SootMethod getAmbiguousMethodByName(java.lang.String methodName)
public static java.lang.String fakeSignature(java.lang.String qualifiedName)
qualifiedName
- public static java.lang.String getClassName(java.lang.String qualifiedName)
public static java.lang.String getMethodName(java.lang.String qualifiedName)
public static boolean isNewInstanceMethod(SootMethod method)