Bundle::ToolSet - write-once ToolSet+Bundle hybrid
This module is a template to allow you to use a Bundle, which facilitates installation of a collection of modules, as a ToolSet... without maintaining two lists that may fall out of sync. As a side-effect the Bundle necessarily constitutes minimal documentation, though you're welcome to supply additional details such as tips & tricks or justification for the imposition of a pragma.
warnings - FATAL => all - sadistic coding practice
strict - subs vars - I want symbolic vars damnit!
diagnostics - + ick
To create your own ToolSet+Bundle, simply edit this POD and save the file under a different name. Specifically, to change what is installed/loaded, edit the "CONTENTS" section. You can then copy the Bundle to an arbitrary machine and use CPAN or CPANPLUS to "install" it i.e; fetch the modules specified.
In order to support the additional features of ToolSet, this module extends the usual syntax of "CONTENTS" which is usually:
package<1> version?<2> (- comment)?<3>
It does so by prepending a phrase to the third field, or comment section of an entry to permit the specification of import options and a togglable delimiter which indicates the state of pragmas. The resulting entry structure is:
package<1> version?<2> (-(import [+-])?<4> comment)?<3>
In addition, a restriction is imposed that no POD formatting codes be used in this section.
import, the 4th field, may currently be blank (\s*) or a list of items to import. Imagine this list is wrapped in a
qw() that sees fat commas
=> as whitespace.
The delimiter between the import options and comment toogles whether a pragma is on or off; + is equivalent to
no and - to
use. This is of course only meaningful for pragmas i.e; a purely lowercase package.
Jerrad Pierce <email@example.com>
Thou shalt not claim ownership of unmodified materials.
Thou shalt not claim whole ownership of modified materials.
Thou shalt grant the indemnity of the provider of materials.
Thou shalt use and dispense freely without other restrictions.
The idea was inspired by http://perladvent.org/2008/10/
1 POD Error
The following errors were encountered while parsing the POD:
- Around line 158:
You forgot a '=back' before '=head1'