Exemplo n.º 1
0
        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());
        }
Exemplo n.º 2
0
        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));
        }