if (dataflowClass == null) {
return;
}
IAnalysisCache analysisCache = Global.getAnalysisCache();
XClass classInfo = analysisCache.getClassAnalysis(XClass.class, classDescriptor);
// Test dataflow analysis on each method]
for (XMethod xMethod : classInfo.getXMethods()) {
if (methodName != null && !methodName.equals(xMethod.getName())) {
continue;
}
MethodDescriptor methodDescriptor = xMethod.getMethodDescriptor();
System.out.println("-----------------------------------------------------------------");
System.out.println("Method: " + SignatureConverter.convertMethodSignature(methodDescriptor));
System.out.println("-----------------------------------------------------------------");
// Create and execute the dataflow analysis
Dataflow<Fact,AnalysisType> dataflow = analysisCache.getMethodAnalysis(dataflowClass, methodDescriptor);
System.out.println("Dataflow finished after " + dataflow.getNumIterations());
if (SystemProperties.getBoolean("dataflow.printcfg")) {
DataflowCFGPrinter<Fact,AnalysisType> cfgPrinter