private static CallGraph<MethodDescriptor, LocationDescriptor> ReBuildCallGraph(Dispatcher dispatcher, Solution solution) { var callgraph = new CallGraph<MethodDescriptor, LocationDescriptor>(); // pg.PropagateDeletionOfNodes(); foreach (var e in dispatcher.GetAllEntites()) { var entityProcessor = new MethodEntityProcessor((MethodEntity)e, dispatcher);// e.GetEntityProcessor(dispatcher); var methodEntity = (MethodEntity)entityProcessor.Entity; if (methodEntity.MethodDescriptor.ToString().Contains("Main")) { callgraph.AddRootMethod(methodEntity.MethodDescriptor); } // Updates the callGraph UpdateCallGraph(entityProcessor, callgraph, solution); } //callgraph.Save("cg_d.dot"); return callgraph; }
public void AnalyzeWithoutAppSettings(Dispatcher dispatcher = null) { if (dispatcher == null) { this.Dispatcher = new OnDemandSyncDispatcher(); } AnalyzeOnDemand(); }