self.node = { }
end
--- Apply f on t recursively; use the corresponding element from args
+-- Apply f on t recursively; use the corresponding elements from args
-- (i.e. same keys) as second parameter to f when available; return
-- the results from f, organized in a similarly nested table.
function DAG:nestedApply(f, t, args)
file:write('\n')
- for nnma, node in pairs(self.node) do
+ for nnmb, node in pairs(self.node) do
file:write(
' '
.. node.index
- .. ' [shape=box,label=\"' .. torch.type(nnma) .. '\"]'
+ .. ' [shape=box,label=\"' .. torch.type(nnmb) .. '\"]'
.. '\n'
)
- for _, nnmb in pairs(node.succ) do
+ for i, nnma in pairs(node.pred) do
+ local decoration = ''
+ if #node.pred > 1 then
+ decoration = ' [label=\"' .. i .. '\"]'
+ end
file:write(
' '
- .. node.index
+ .. self.node[nnma].index
.. ' -> '
.. self.node[nnmb].index
+ .. decoration
.. '\n'
)
end