Pod::Abstract::Filter - Generic Pod-in to Pod-out filter.
This is a superclass for filter modules using Pod::Abstract. Subclasses should
override the "filter" sub.
Pod::Abstract::Filter classes in the Pod::Abstract::Filter namespace will be
used by the "paf" utility.
To create a filter, you need to implement:
- filter
- Takes a Pod::Abstract::Node tree, and returns either another tree, or a
string. If a string is returned, it will be re-parsed to be input to any
following filter, or output directly if it is the last filter in the list.
It is recommended your filter method produce a Node tree if
you are able to, as this will improve interoperability with other
"Pod::Abstract" based software.
- require_params
- If you want positional arguments following your filter in the style of:
paf find [thing] Pod::Abstract
then override require_params to list the named arguments that
are to be accepted after the filter name.
Create a new filter with the specified arguments.
Override to return a list of parameters that must be provided. This will be
accepted in order on the command line, unless they are first set using the
"-flag=xxx" notation.
Get the named param. Read only.
Stub method. Does nothing, just returns the original tree.
Run the filter. If $arg is a string, it will be parsed
first. Otherwise, the Abstract tree will be used. Returns either a string or
an abstract tree (which may be the original tree, modified).
Ben Lilburne <bnej@mac.com>
Copyright (C) 2009 Ben Lilburne
This program is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.