(graph: Dagre.Graph, idTable: IdTable, outStream: Stream<any>)
| 124 | } |
| 125 | |
| 126 | function traverse(graph: Dagre.Graph, idTable: IdTable, outStream: Stream<any>) { |
| 127 | if (outStream._prod && outStream._prod['ins']) { |
| 128 | const inStream: Stream<any> = outStream._prod['ins']; |
| 129 | visitOperator(graph, idTable, outStream._prod); |
| 130 | visitEdge(graph, idTable, inStream, outStream._prod, outStream); |
| 131 | } else if (outStream._prod && outStream._prod['insArr']) { |
| 132 | const insArr: Array<Stream<any>> = outStream._prod['insArr']; |
| 133 | visitOperator(graph, idTable, outStream._prod); |
| 134 | insArr.forEach(inStream => { |
| 135 | visitEdge(graph, idTable, inStream, outStream._prod, outStream); |
| 136 | }); |
| 137 | } else if (outStream._prod) { |
| 138 | visitOperator(graph, idTable, outStream._prod); |
| 139 | makeSureNodeIsRegistered(graph, idTable, outStream); |
| 140 | graph.setEdge(idTable.getId(outStream._prod), idTable.getId(outStream), {}); |
| 141 | } |
| 142 | } |
| 143 | |
| 144 | function buildGraph(sinks: Object): Dagre.Graph { |
| 145 | const idTable = new IdTable(); |
no test coverage detected