public async Task <IReadOnlyList <OuterFlowEdge> > GetReturnEdgesToAsync(CallFlowNode callNode) { // TODO: Store outer edges instead of recreating them every time var graph = (await this.LazyGenerateGraphsAsync((MethodLocation)callNode.Location)).FlowGraph; return(graph.Nodes .OfType <ReturnFlowNode>() .Select(returnNode => OuterFlowEdge.CreateReturn(new OuterFlowEdgeId(-1), returnNode, callNode)) .ToArray()); }
public Task <IReadOnlyList <OuterFlowEdge> > GetReturnEdgesToAsync(CallFlowNode callNode) { // TODO: Store outer edges instead of recreating them every time var generator = ((TestRoutineLocation)callNode.Location).Generator; var graph = this.generatorToGraphMap[generator]; var result = graph.Nodes .OfType <ReturnFlowNode>() .Select(returnNode => OuterFlowEdge.CreateReturn(new OuterFlowEdgeId(-1), returnNode, callNode)) .ToArray(); return(Task.FromResult <IReadOnlyList <OuterFlowEdge> >(result)); }