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

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

Convert a Pod::Tree back to a POD

## NAME

Pod::Tree::Pod - Convert a Pod::Tree back to a POD

## SYNOPSIS

```
  use Pod::Tree::Pod;
  $tree =  Pod::Tree->new;

  $dest =  IO::File->new;
  $dest = "file.pod";
  $pod  =  Pod::Tree::Pod->new($tree, $dest);
  $pod->translate;
```

## DESCRIPTION

`"Pod::Tree::Pod"` converts a Pod::Tree back to a POD. The destination is fixed when the object is created. The `"translate"` method does the actual translation.

For convenience,  Pod::Tree::Pod can write the POD to a variety of destinations. The `"new"` method resolves the *$dest* argument.

### Destination resolution

`"Pod::Tree::Pod"` can write HTML to either of 2 destinations. `"new"` resolves *$dest* by checking these things, in order:

- 1\.

  If *$dest* is a reference, then it is taken to be an `"IO::File"` object that is already open on the file where the POD will be written.

- 2\.

  If *$dest* is not a reference, then it is taken to be the name of the file where the POD will be written.

## METHODS

- *$pod* = "new" "Pod::Tree::Pod" *$tree*, *$dest*

  Creates a new `"Pod::Tree::Pod"` object.

  *$tree* is a `"Pod::Tree"` object that represents a POD. *$pod* writes the POD to *$dest*. See "Destination resolution" for details.

- *$pod*-\>"translate"

  Writes the text of the POD. This method should only be called once.

## DIAGNOSTICS

- "Pod::Tree::Pod::new: not enough arguments"

  (F) `"new"` called with fewer than 2 arguments.

- "Pod::Tree::HTML::new: Can't open $dest: $!"

  (F) The destination file couldn't be opened.

## NOTES

- •

  The destination doesn't actually have to be an `"IO::File"` object. It may be any object that has a `"print"` method.

## SEE ALSO

[**perl**(1)](/perl/1.md), `"Pod::Tree"`, `"Pod::Tree::Node"`

## AUTHOR

Steven McDougall, swmcd@world.std.com

## COPYRIGHT

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