Pod::Tree::PerlLib(3)

NAME
Pod::Tree::PerlLib - translate module PODs to HTML

SYNOPSIS
  $perl_map = Pod::Tree::PerlMap->new;
  $perl_lib = Pod::Tree::PerlLib->new( $perl_dir, $HTML_dir, $perl_map, %opts );

  $perl_lib->scan(@INC);
  $perl_lib->index;
  $perl_lib->translate;

  $top = $perl_lib->get_top_entry;

DESCRIPTION
"Pod::Tree::PerlLib" translates module PODs to HTML. It does a recursive subdirectory search through a list of directories (typically @INC) to find PODs.

"Pod::Tree::PerlLib" generates a top-level index of all the PODs that it finds, and writes it to HTML_dir"/lib.html".

"Pod::Tree::PerlLib" generates and uses an index of the PODs that it finds to construct HTML links. Other modules can also use this index.

METHODS

$perl_lib = "new" "Pod::Tree::PerlLib" $perl_dir, $HTML_dir, $perl_map, %options
    Creates and returns a new "Pod::Tree::PerlLib" object.

    $HTML_dir is the directory where HTML files will be written.

    $perl_map maps module names to URLs.

    %options are passed through to "Pod::Tree::HTML".

    The $perl_dir argument is included for consistency with the other "Pod::Tree::Perl*" modules, but is currently unused.

$perl_lib->"scan"(@INC)
    Does a recursive subdirectory search through @INC to locate module PODs. Each module that is identified is entered into $perl_map.

$perl_lib->"index"
    Generates a top-level index of all the modules. The index is written to HTML_dir"/lib.html".

$perl_lib->"translate"
    Translates each module POD found by "scan" to HTML. The HTML pages are written to HTML_dir"/lib/", in a subdirectory hierarchy that maps the module names.

$perl_lib->"get_top_entry"
    Returns a hash reference of the form

      { URL         => $URL,
        description => $description }

    "Pod::Tree::PerlTop" uses this to build a top-level index of all the Perl PODs.

LINKING
"Pod::Tree::PerlLib" expects the second paragraph of the POD to have the form

    Foo::Bar - description

and enters Foo::Bar into $perl_map. To link to a module POD, write

    L<Foo::Bar>

REQUIRES
    5.005;
    HTML::Stream;
    Pod::Tree;
    Pod::Tree::HTML;
    Pod::Tree::PerlUtil;

EXPORTS
Nothing.

SEE ALSO
"Pod::Tree::HTML", "Pod::Tree::PerlMap"

AUTHOR
Steven McDougall, swmcd@world.std.com

COPYRIGHT
Copyright (c) 2000 by Steven McDougall. This module is free software; you can redistribute it and/or modify it under the same terms as Perl.