---
name: "Pod::Tree::PerlBin"
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::PerlBin"
---

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

translate program PODs to HTML

## NAME

Pod::Tree::PerlBin - translate program PODs to HTML

## SYNOPSIS

```
  $perl_map = Pod::Tree::PerlMap->new;
  $perl_bin = Pod::Tree::PerlBin->new($perl_dir, $HTML_dir, $perl_map, %opts);
  $perl_bin->scan(@path);
  $perl_bin->index;
  $perl_bin->translate;
  $top = $perl_bin->get_top_entry;
```

## DESCRIPTION

`"Pod::Tree::PerlBin"` translates program PODs to HTML.

It searches for programs in a list of directories (typically a PATH), and searches for PODs within the programs. Only text (-T) files are considered.

`"Pod::Tree::PerlBin"` generates a top-level index of all the program PODs,  and writes it to *HTML\_dir*`"/bin.html"`.

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

## METHODS

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

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

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

  *$perl\_map* maps program 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\_bin*-\>"scan"(*@path*)

  Scans all the directories in *@path* for program PODs. Only text (-T) files are considered. The search does not recurse through subdirectories.

  Each POD that is located is entered into *$perl\_map*.

- *$perl\_bin*-\>"index"

  Generates a top-level index of all the program PODs,  and writes it to *HTML\_dir*`"/bin.html"`.

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

  Translates each program POD found by `"scan"` to HTML. The HTML pages are written to *HTML\_dir*.

- *$perl\_bin*-\>"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::PerlBin"` expects the second paragraph of the POD to  have the form

```
    name - description
```

and enters *name* into *$perl\_map*. To link to a program POD from another POD, write

```
    L<name>
```

## REQUIRES

```
    5.005
    File::Find
    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.
