---
name: "Pod::Tree::PerlTop"
section: "3pm"
platform: "linux"
package: "libpod-tree-perl"
version: "1.31-2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Pod::Tree::PerlTop"
---

# Pod::Tree::PerlTop(3pm)

generate a top-level index for Perl PODs

## NAME

Pod::Tree::PerlTop - generate a top-level index for Perl PODs

## SYNOPSIS

```
  $perl_map = Pod::Tree::PerlMap->new;
  $perl_top = Pod::Tree::PerlTop->new( $perl_dir, $HTML_dir, $perl_map, %opts );

  $perl_top->index(@translators);
  $perl_top->translate;

  $top = $perl_top->get_top_entry;
```

## DESCRIPTION

`"Pod::Tree::PerlTop"` generates a top-level index for Perl PODs.

It also translates *perl.pod* to *perl.html* The translator is specially hacked to insert links into the big verbatim paragraph that lists all the other Perl PODs.

## METHODS

- *$perl\_top* = "new" "Pod::Tree::PerlTop" *$perl\_dir*, *$HTML\_dir*, *$perl\_map*, *%options*

  Creates and returns a new `"Pod::Tree::PerlTop"` object.

  *$perl\_dir* is the root of the Perl source tree.

  *$HTML\_dir* is the directory where HTML files will be written.

  *$perl\_map* maps POD names to URLs. `"Pod::Tree::PerlTop"` uses it to resolve links in the *perl.pod* page.

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

- *$perl\_top*-\>"index"(*@translators*)

  Generates a top-level index of all the PODs.  The index is written to *HTML\_dir*`"/index.html"`.

  *@translators* is a list of other `"Pod::Tree::Perl*"` translator objects. `"index"` makes a `"get_top_entry"` call on each of them to obtain URLs and descriptions of the pages that it links to.

- *$perl\_top*-\>"translate"

  Translates the *perl.pod* file to HTML. The HTML page is written to *HTML\_dir*`"/pod/perl.html"`

- *$perl\_top*-\>"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.

## REQUIRES

```
    5.005;
    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.
