tfm-slides/figs/problem3-data-edge-color-f1...

42 lines
1.3 KiB
Plaintext

digraph g {
enter [];
mxin [label = "x = x_in", ];
try [];
x_in [label = "x_in = x", style = filled, fillcolor = lightgreen];
f [label = "f()", style = filled, fillcolor = lightgreen];
nr [label = "normal return", style = filled, fillcolor = lightgreen];
x_out_nr [label = "x = x_out", style = filled, fillcolor = lightgreen];
er [label = "error return", style = filled, fillcolor = lightgreen];
catch [label = "catch (Exception e)"];
x_out_catch [label = "x = x_out", style = filled, fillcolor = lightgreen];
log [label = "log(\"error\")"];
x_0 [label = "x = 0", style = invis];
x_in2 [label = "x_in = x", ];
f2 [label = "f()", ];
nr2 [label = "normal return"];
er2 [label = "error return"];
ee [label = "error exit"];
x_out_nr2 [label = "x = x_out"];
x_out_ee [label = "x = x_out"];
enter -> {mxin try};
enter -> x_0 [style = invis];
try -> f -> {x_in nr er}
nr -> x_out_nr
er -> catch -> {x_out_catch log}
enter -> {f2}
f2 -> {x_in2 nr2 er2}
nr2 -> x_out_nr2
er2 -> ee -> x_out_ee;
{edge [color = red, constraint = false];
mxin -> x_in;
{x_out_catch x_out_nr} -> x_in2;
x_0 -> x_in2 [style = invis];
}
{edge [color = blue, constraint = false];
x_in -> {x_out_nr x_out_catch}
x_in2 -> {x_out_nr2 x_out_ee}
}
}