1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
|
#!/usr/bin/ruby
$:.unshift( "../lib" )
require "graphviz"
g = nil
if ARGV[0]
g = GraphViz::new( "G", :path => ARGV[0] )
else
g = GraphViz::new( "G" )
end
main = g.add_nodes( "main" )
parse = g.add_nodes( "parse" )
execute = g.add_nodes( "execute" )
init = g.add_nodes( "init" )
cleanup = g.add_nodes( "cleanup" )
make_string = g.add_nodes( "make_string" )
printf = g.add_nodes( "printf" )
compare = g.add_nodes( "compare" )
g.add_edges( main, parse )
g.add_edges( parse, execute )
g.add_edges( main, init )
g.add_edges( main, cleanup )
g.add_edges( execute, make_string )
g.add_edges( execute, printf )
g.add_edges( init, make_string )
g.add_edges( main, printf )
g.add_edges( execute, compare )
g.output( :png => "#{$0}.png" )
|