public static ContextManager makeContextManager(CallGraph cg) { return new ContextInsensitiveContextManager(cg); }
/** * This constructor builds the incomplete hack call graph for the Dava ThrowFinder. It uses all application class methods * as entry points, and it ignores any calls by non-application class methods. Don't use this constructor if you need a * real call graph. */ public CallGraphBuilder() { logger.warn("using incomplete callgraph containing " + "only application classes."); pa = soot.jimple.toolkits.pointer.DumbPointerAnalysis.v(); cg = Scene.v().internalMakeCallGraph(); Scene.v().setCallGraph(cg); List<MethodOrMethodContext> entryPoints = new ArrayList<MethodOrMethodContext>(); entryPoints.addAll(EntryPoints.v().methodsOfApplicationClasses()); entryPoints.addAll(EntryPoints.v().implicit()); reachables = new ReachableMethods(cg, entryPoints); ContextManager cm = new ContextInsensitiveContextManager(cg); ofcgb = new OnFlyCallGraphBuilder(cm, reachables, true); }
public static ContextManager makeContextManager( CallGraph cg ) { return new ContextInsensitiveContextManager( cg ); }
public static ContextManager makeContextManager( CallGraph cg ) { return new ContextInsensitiveContextManager( cg ); }
/** This constructor builds the incomplete hack call graph for the * Dava ThrowFinder. * It uses all application class methods as entry points, and it ignores * any calls by non-application class methods. * Don't use this constructor if you need a real call graph. */ public CallGraphBuilder() { G.v().out.println( "Warning: using incomplete callgraph containing "+ "only application classes." ); pa = soot.jimple.toolkits.pointer.DumbPointerAnalysis.v(); cg = new CallGraph(); Scene.v().setCallGraph(cg); List<MethodOrMethodContext> entryPoints = new ArrayList<MethodOrMethodContext>(); entryPoints.addAll( EntryPoints.v().methodsOfApplicationClasses() ); entryPoints.addAll( EntryPoints.v().implicit() ); reachables = new ReachableMethods( cg, entryPoints ); ContextManager cm = new ContextInsensitiveContextManager( cg ); ofcgb = new OnFlyCallGraphBuilder( cm, reachables, true ); } public void build() {
/** This constructor builds the incomplete hack call graph for the * Dava ThrowFinder. * It uses all application class methods as entry points, and it ignores * any calls by non-application class methods. * Don't use this constructor if you need a real call graph. */ public CallGraphBuilder() { G.v().out.println( "Warning: using incomplete callgraph containing "+ "only application classes." ); pa = soot.jimple.toolkits.pointer.DumbPointerAnalysis.v(); cg = new CallGraph(); Scene.v().setCallGraph(cg); List<MethodOrMethodContext> entryPoints = new ArrayList<MethodOrMethodContext>(); entryPoints.addAll( EntryPoints.v().methodsOfApplicationClasses() ); entryPoints.addAll( EntryPoints.v().implicit() ); reachables = new ReachableMethods( cg, entryPoints ); ContextManager cm = new ContextInsensitiveContextManager( cg ); ofcgb = new OnFlyCallGraphBuilder( cm, reachables, true ); } public void build() {