Note: This version of the module works works with perl 5.8.0. If you
need it to work with perl 5.6.x, please use an earlier version from CPAN.
This module provides an attribute wrapper around Getopt::Long.
Instead of declaring the options in a hash with references to the
variables and subroutines affected by the options, you can use the
Getopt attribute on the variables and subroutines directly.
As you can see from the Synopsis, the attribute takes an argument
of the same format as you would give as the hash key for Getopt::Long.
See the Getopt::Long manpage for details.
Note that since attributes are processed during CHECK, but assignments
on newly declared variables are processed during run-time, you
cant set defaults on those variables beforehand, like this:
our $verbose : Getopt(verbose!) = 1; # DOES NOT WORK
Instead, you have to establish defaults afterwards, like so:
our $verbose : Getopt(verbose!);
$verbose ||= 1;
Alternatively, you can specify a default value within the Getopt
our $def2 : Getopt(def2=i 42);
To check whether there was an error during getopt processing you can use
the error() function:
pod2usage(-verbose => 2, -exitval => 0) if Getopt::Attribute->error;