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

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

map names to URLs

## NAME

Pod::Tree::PerlMap - map names to URLs

## SYNOPSIS

```
  $perl_map = new Pod::Tree::PerlMap;

  $perl_map->add_page  ($name, $file);
  $perl_map->add_func  ($func, $file);
  $perl_map->force_func(0);
  $perl_map->force_func(1);
  $perl_map->set_depth ($depth);

  ($base, $page, $section) = $perl_map->map($base, $page, $section);
```

## DESCRIPTION

`"Pod::Tree::PerlMap"` maps L\<\> markups to URLs.

The `"Pod::Tree::Perl*"` translators make entries in the map. `"Pod::Tree::HTML"` uses the map to translate links before it emits them.

## METHODS

- *$perl\_map*-\>"add\_page"(*$name*, *$file*)

  Map *$name* to *$file*. *$name* is the name of a POD, as used in L\<\> markups. *$file* is the path to the HTML file that is the target of the link.

- *$perl\_map*-\>"add\_func"(*$func*, *$file*)

  Maps *$func* to *$file*. *$func* is the name of a function described in *perlfunc.pod*. *$file* is the name of the HTML file where it is described.

- *$perl\_map*-\>"force\_func"(*$state*)

  Controls interpretation of links of the form L\<func\>.

  If *$state* is true, calls to `"map"` will interpret L\<func\> as L\<perlfunc/func\>.

  If *$state* is false, calls to `"map"` will interpret  L\<func\> normally.

- *$perl\_map*-\>"set\_depth"(*$depth*)

  Informs *$perl\_map* of the depth of the referring page in the HTML directory tree.  *$perl\_map* needs to know this so that it can construct relative links.

- (*$base*, *$page*, *$section*) = *$perl\_map*-\>"map"(*$base*, *$page*, *$section*)

  Remaps a link.

  *$base* is the base URL for the HTML page, if any. *$page* is the page given in an L\<\> markup. *$section* is the section given in the L\<\> markup, if any.

  `"map"` returns a new *$base*, *$page*, and *$section* that can be used to construct a link to the HTML page.

## REQUIRES

Nothing.

## EXPORTS

Nothing.

## 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.
