Pod::Tree(3pm) | User Contributed Perl Documentation | Pod::Tree(3pm) |
Pod::Tree - Create a static syntax tree for a POD
use Pod::Tree; $tree = Pod::Tree->new; $tree->load_file ( $file, %options) $tree->load_fh ( $fh , %options); $tree->load_string ( $pod , %options); $tree->load_paragraphs(\@pod , %options); $loaded = $tree->loaded; $node = $tree->get_root; $tree->set_root ($node); $node = $tree->pop; $tree->push(@nodes); $tree->walk(\&sub); $tree->has_pod and ... print $tree->dump;
Nothing
"Pod::Tree" parses a POD into a static syntax tree. Applications walk the tree to recover the structure and content of the POD. See "Pod::Tree::Node" for a description of the tree.
See "OPTIONS" for a description of %options
See "OPTIONS" for a description of %options
See "OPTIONS" for a description of %options
See "OPTIONS" for a description of %options
"walk" descends to the children and siblings of $node iff sub() returns true.
These options may be passed in the %options hash to the "load_"* methods.
The initial value of "in_pod" defaults to false for "load_file()" and "load_fh()" calls and true for "load_string()" and "load_paragraphs()" calls. This is usually what you want, unless you want consistency. If this isn't what you want, pass different initial values in the %options hash.
Currently, "Pod::Tree" does not provide a complete, exact representation of its input. For example, it doesn't distingish between
C<$foo-E<gt>bar>
and
C<< $foo->bar >>
As a result, it is not guaranteed that a file can be exactly reconstructed from its "Pod::Tree" representation.
In the documentation of the
L<"sec"> section in this manual page
markup, "perlpod" has always claimed
(the quotes are optional)
However, there is no way to decide from the syntax alone whether
L<foo>
is a link to the foo man page or a link to the "foo" section of this man page.
"Pod::Tree" parses "L<foo>" as a link to a section if "foo" looks like a section name (e.g. contains whitespace), and as a link to a man page otherswise.
In practice, this tends to break links to sections. If you want your section links to work reliably, write them as "L<"foo">" or "L</foo>".
perl(1), "Pod::Tree::Node", "Pod::Tree::HTML"
Steven McDougall <swmcd@world.std.com> Currently maintained by Mohammad S Anwar <mohammad.anwar@yahoo.com>
Copyright (c) 1999-2009 by Steven McDougall. This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
2022-11-19 | perl v5.36.0 |