|
NAMEGraphViz::Traverse::Filesystem - Visualize a filesystem with GraphVizSYNOPSISuse GraphViz::Traverse::Filesystem; $g = GraphViz::Traverse::Filesystem->new( ratio => 'compress', bgcolor => 'beige' ); $g->traverse($root); print $g->as_debug; DESCRIPTIONA "GraphViz::Traverse::Filesystem" object provides methods to traverse a file system and render it with "GraphViz".Inherit this module to define and use custom node_* and edge_* methods. Example: package Foo; use strict; use warnings; use base qw( GraphViz::Traverse::Filesystem ); sub node_style { return 'filled' } sub node_peripheries { my $self = shift; $_ = shift; return !-d $_ && -x $_ ? 2 : 1; # Executable? Get a ring. } sub node_fillcolor { my $self = shift; $_ = shift; return -d $_ ? 'snow' : /\.pod$/ ? 'cadetblue' : /\.pm$/ ? 'cadetblue4' : /\.cgi$/ ? 'cadetblue3' : /\.pl$/ ? 'cadetblue2' : /(?:readme|changes?)/i ? 'goldenrod' : /\.txt$/ ? 'gold4' : /\.css$/ ? 'plum' : /\.html?$/ ? 'plum3' : /\.jpe?g$/ ? 'orchid4' : /\.gif$/ ? 'orchid3' : /\.png$/ ? 'orchid1' : /\.t(?:ar\.)?gz$/ ? 'red3' : /\.zip$/ ? 'red1' : /\.dump$/ ? 'pink' : 'yellow'; } sub edge_color { return 'gray' } # etc. 1; PUBLIC METHODStraverse$g->traverse($root); Traverse a file system starting at the given root path and populate the "GraphViz" object with file nodes-and path-edges. SEE ALSOGraphVizGraphViz::Traverse COPYRIGHTCopyright 2006, Gene Boggs, All Rights ReservedLICENSEYou may use this module under the license terms of the parent GraphViz package.AUTHORGene Boggs <gene@cpan.org>
Visit the GSP FreeBSD Man Page Interface. |