GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages


Manual Reference Pages  -  GRAPHVIZ2::PARSE::ISA (3)

.ds Aq ’

NAME

GraphViz2::Parse::ISA - Visualize N Perl class hierarchies as a graph

CONTENTS

Synopsis



        #!/usr/bin/env perl

        use strict;
        use warnings;

        use File::Spec;

        use GraphViz2;
        use GraphViz2::Parse::ISA;

        use Log::Handler;

        # ------------------------------------------------

        my($logger) = Log::Handler -> new;

        $logger -> add
                (
                 screen =>
                 {
                         maxlevel       => debug,
                         message_layout => %m,
                         minlevel       => error,
                 }
                );

        my($graph) = GraphViz2 -> new
                (
                 edge   => {color => grey},
                 global => {directed => 1},
                 graph  => {rankdir => BT},
                 logger => $logger,
                 node   => {color => blue, shape => Mrecord},
                );
        my($parser) = GraphViz2::Parse::ISA -> new(graph => $graph);

        unshift @INC, t/lib;

        $parser -> add(class => Adult::Child::Grandchild, ignore => []);
        $parser -> add(class => Hybrid, ignore => []);
        $parser -> generate_graph;

        my($format)      = shift || svg;
        my($output_file) = shift || File::Spec -> catfile(html, "parse.code.$format");

        $graph -> run(format => $format, output_file => $output_file);



See scripts/parse.isa.pl (Scripts Shipped with this Module in GraphViz2).

Description

Takes a class name and converts its class hierarchy into a graph. This can be done for N different classes before the graph is generated.

You can write the result in any format supported by Graphviz <http://www.graphviz.org/>.

Here is the list of output formats <http://www.graphviz.org/content/output-formats>.

Distributions

This module is available as a Unix-style distro (*.tgz).

See <http://savage.net.au/Perl-modules/html/installing-a-module.html> for help on unpacking and installing distros.

Installation

Install GraphViz2 as you would for any Perl module:

Run:



        cpanm GraphViz2



or run:



        sudo cpan GraphViz2



or unpack the distro, and then either:



        perl Build.PL
        ./Build
        ./Build test
        sudo ./Build install



or:



        perl Makefile.PL
        make (or dmake or nmake)
        make test
        make install



Constructor and Initialization

Calling new()

new() is called as my($obj) = GraphViz2::Parse::ISA -> new(k1 => v1, k2 => v2, ...).

It returns a new object of type GraphViz2::Parse::ISA.

Key-value pairs accepted in the parameter list:
o graph => $graphviz_object This option specifies the GraphViz2 object to use. This allows you to configure it as desired.

The default is GraphViz2 -> new. The default attributes are the same as in the synopsis, above, except for the logger of course, which defaults to ’’.

This key is optional.

Methods

add(class => CW$class[, ignore => CW$ignore])

Adds the class hierarchy of $class to an internal structure.

$class is the name of the class whose parents are to be found.

$ignore is an optional arrayref of class names to ignore. The value of $ignore is not preserved between calls to add().

After all desired calls to add(), you must call generate_graph() to actually trigger the call to the GraphViz2 methods add_node() and add_edge().

Returns $self for method chaining.

See scripts/parse.isa.pl.

generate_graph()

Processes the internal structure mentioned under add() to add all the nodes and edges to the graph.

After that you call GraphViz2’s run() method on the graph object. See graph().

Returns $self for method chaining.

See scripts/parse.isa.pl.

graph()

Returns the graph object, either the one supplied to new() or the one created during the call to new().

FAQ

See FAQ in GraphViz2 and Scripts Shipped with this Module in GraphViz2.

Thanks

Many thanks are due to the people who chose to make Graphviz <http://www.graphviz.org/> Open Source.

And thanks to Leon Brocard <http://search.cpan.org/~lbrocard/>, who wrote GraphViz, and kindly gave me co-maint of the module.

The code in add() was adapted from GraphViz::ISA::Multi by Marcus Thiesen, but that code gobbled up package declarations in comments and POD, so I used Pod::Simple to give me just the source code.

Version Numbers

Version numbers < 1.00 represent development versions. From 1.00 up, they are production versions.

Machine-Readable Change Log

The file Changes was converted into Changelog.ini by Module::Metadata::Changes.

Support

Email the author, or log a bug on RT:

<https://rt.cpan.org/Public/Dist/Display.html?Name=GraphViz2>.

Author

GraphViz2 was written by Ron Savage <ron@savage.net.au> in 2011.

Home page: <http://savage.net.au/index.html>.

Copyright

Australian copyright (c) 2011, Ron Savage.



        All Programs of mine are OSI Certified Open Source Software;
        you can redistribute them and/or modify them under the terms of
        The Artistic License, a copy of which is available at:
        http://www.opensource.org/licenses/index.html



Search for    or go to Top of page |  Section 3 |  Main Index


perl v5.20.3 GRAPHVIZ2::PARSE::ISA (3) 2015-10-11

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.