Pod::ParseUtils - helpers for POD parsing and conversion |
Pod::ParseUtils - helpers for POD parsing and conversion
use Pod::ParseUtils;
my $list = new Pod::List; my $link = Pod::Hyperlink->new('Pod::Parser');
NOTE: This module is considered legacy; modern Perl releases (5.18 and higher) are going to remove Pod-Parser from core and use Pod-Simple for all things POD.
Pod::ParseUtils contains a few object-oriented helper packages for POD parsing and processing (i.e. in POD formatters and translators).
Pod::List can be used to hold information about POD lists (written as =over ... =item ... =back) for further processing. The following methods are available:
new()
my $list = Pod::List->new({ -start => $., -indent => 4 });
See the individual methods/properties for details.
file()
start()
indent()
=over n
. This must have been set before by either specifying
-indent in the new() method or by calling the indent() method
with a scalar argument.
type()
OL
, UL
, ... when thinking the HTML way.
This must have been set before by either specifying
-type in the new() method or by calling the type() method
with a scalar argument.
rx()
<OL>
already prints numbers itself.
This must have been set before by either specifying
-rx in the new() method or by calling the rx() method
with a scalar argument.
item()
parent()
tag()
Pod::Hyperlink is a class for manipulation of POD hyperlinks. Usage:
my $link = Pod::Hyperlink->new('alternative text|page/"section in page"');
The Pod::Hyperlink class is mainly designed to parse the contents of the
L<...>
sequence, providing a simple interface for accessing the
different parts of a POD hyperlink for further processing. It can also be
used to construct hyperlinks.
new()
L<...>
sequence. An object
of the class Pod::Hyperlink
is returned. The value undef
indicates a
failure, the error message is stored in $@
.
parse($string)
L<...>
sequence. The result is stored in the current object.
Warnings are stored in the warnings property.
E.g. sections like L<open(2)>
are deprecated, as they do not point
to Perl documents. L<DBI::foo(3p)>
is wrong as well, the manpage
section can simply be dropped.
markup($string)
P<>
and Q<>
that should be expanded by the
translator's interior sequence expansion engine to the
formatter-specific code to highlight/activate the hyperlink. The details
have to be implemented in the translator.
text()
+perl+ L<perl> *$|* in +perlvar+ L<perlvar/$|> *OPTIONS* in +perldoc+ L<perldoc/"OPTIONS"> *DESCRIPTION* L<"DESCRIPTION">
warning()
file()
line()
page()
node()
alttext()
type()
section
or item
. As an unofficial type,
there is also hyperlink
, derived from e.g. L<http://perl.com>
link()
L<>
. Reciprocal to parse().
Pod::Cache holds information about a set of POD documents, especially the nodes for hyperlinks. The following methods are available:
new()
item()
find_page($name)
$name
in the cache. Returns the
reference to the corresponding Pod::Cache::Item object or undef if
not found.
Pod::Cache::Item holds information about individual POD documents, that can be grouped in a Pod::Cache object. It is intended to hold information about the hyperlink nodes of POD documents. The following methods are available:
new()
page()
description()
=head1 NAME
section.
path()
file()
nodes()
find_node
method to work correctly.
find_node($name)
$name
in the object.
Returns the unique id of the node (i.e. the second element of the array
stored in the node array) or undef if not found.
idx()
Please report bugs using http://rt.cpan.org.
Marek Rouchal <marekr@cpan.org>, borrowing a lot of things from pod2man and pod2roff as well as other POD processing tools by Tom Christiansen, Brad Appleton and Russ Allbery.
Pod::ParseUtils is part of the the Pod::Parser manpage distribution.
pod2man, pod2roff, the Pod::Parser manpage, the Pod::Checker manpage, pod2html
Pod::ParseUtils - helpers for POD parsing and conversion |