Pod::Simple::SimpleTree(3p)

Pod::Simple::SimpleTree3p

Usage

  % cat ptest.pod
  =head1 PIE
  I like B<pie>!
  % perl -MPod::Simple::SimpleTree -MData::Dumper -e \
     "print Dumper(Pod::Simple::SimpleTree->new->parse_file(shift)->root)" \
     ptest.pod
  $VAR1 = [
            'Document',
            { 'start_line' => 1 },
            [
              'head1',
              { 'start_line' => 1 },
              'PIE'
            ],
            [
              'Para',
              { 'start_line' => 3 },
              'I like ',
              [
                'B',
                {},
                'pie'
              ],
              '!'
            ]
          ];

Overview

This class is of interest to people writing a Pod processor/formatter.

This class takes Pod and parses it, returning a parse tree made just of arrayrefs, and hashrefs, and strings.

This is a subclass of Pod::Simple and inherits all its methods.

This class is inspired by XML::Parser's "Tree" parsing-style, although it doesn't use exactly the same LoL format.

Methods

At the end of the parse, call "$parser->root" to get the tree's top node.

Tree Contents

Every element node in the parse tree is represented by an arrayref of the form: "[ elementname, \%attributes, ...subnodes... ]". See the example tree dump in the Synopsis, above.

Every text node in the tree is represented by a simple (non-ref) string scalar. So you can test ref($node) to see whether you have an element node or just a text node.

The top node in the tree is "[ 'Document', \%attributes, ...subnodes... ]"

Support

Questions or discussion about POD and Pod::Simple should be sent to the [email protected] mail list. Send an empty email to [email protected] to subscribe.

This module is managed in an open GitHub repository, <https://github.com/perl-pod/pod-simple/>. Feel free to fork and contribute, or to clone <https://github.com/perl-pod/pod-simple.git> and send patches!

Patches against Pod::Simple are welcome. Please send bug reports to <[email protected]>.

Releases

32 releases since OpenBSD 5.0; the text changed 20 times.

  1. 5.0–5.3
  2. 5.4–5.5
  3. 5.6
  4. 5.7
  5. 5.8–5.9
  6. 6.0
  7. 6.1
  8. 6.2
  9. 6.3–6.4
  10. 6.5
  11. 6.6
  12. 6.7
  13. 6.8
  14. 6.9–7.2
  15. 7.3
  16. 7.4
  17. 7.5
  18. 7.6
  19. 7.7–7.8
  20. 7.9
  21. 8.0

Author

Pod::Simple was created by Sean M. Burke <[email protected]>. But don't bother him, he's retired.

Pod::Simple is maintained by:

•

Allison Randal "[email protected]"

•

Hans Dieter Pearcey "[email protected]"

•

David E. Wheeler "[email protected]"

From man 8.0-current-20261101 in OpenBSD 8.0-current (2026-11-01). Parsed by carta from the page's man source.