|
|
|
|
118
|
child.In[parent.Node].Residual = true
|
118
|
child.In[parent.Node].Residual = true
|
119
|
}
|
119
|
}
|
120
|
|
120
|
|
|
|
121
|
+func makeEdgeInline(edgeMap EdgeMap, node *Node) {
|
|
|
122
|
+ edgeMap[node].Inline = true
|
|
|
123
|
+}
|
|
|
124
|
+
|
121
|
// Creates a directed edges from the parent to each of the children
|
125
|
// Creates a directed edges from the parent to each of the children
|
122
|
func createEdges(parent *Node, children ...*Node) {
|
126
|
func createEdges(parent *Node, children ...*Node) {
|
123
|
for _, child := range children {
|
127
|
for _, child := range children {
|
|
|
|
|
189
|
}
|
193
|
}
|
190
|
createEdges(nodes[0], nodes[1])
|
194
|
createEdges(nodes[0], nodes[1])
|
191
|
createEdges(nodes[1], nodes[2], nodes[3])
|
195
|
createEdges(nodes[1], nodes[2], nodes[3])
|
|
|
196
|
+ makeEdgeInline(nodes[0].Out, nodes[1])
|
|
|
197
|
+ makeEdgeInline(nodes[1].Out, nodes[2])
|
192
|
|
198
|
|
193
|
// Create Expected graph
|
199
|
// Create Expected graph
|
194
|
Expected, Keep := createExpectedNodes(nodes[0], nodes[2], nodes[3])
|
200
|
Expected, Keep := createExpectedNodes(nodes[0], nodes[2], nodes[3])
|
195
|
createExpectedEdges(Expected[0], Expected[1], Expected[2])
|
201
|
createExpectedEdges(Expected[0], Expected[1], Expected[2])
|
|
|
202
|
+ makeEdgeInline(Expected[0].Out, Expected[1].Node)
|
196
|
makeExpectedEdgeResidual(Expected[0], Expected[1])
|
203
|
makeExpectedEdgeResidual(Expected[0], Expected[1])
|
197
|
makeExpectedEdgeResidual(Expected[0], Expected[2])
|
204
|
makeExpectedEdgeResidual(Expected[0], Expected[2])
|
198
|
return TrimTreeTestCase{
|
205
|
return TrimTreeTestCase{
|