Marcel Grünauer > Getopt-Inherited-1.100860 > Getopt::Inherited

Download:
Getopt-Inherited-1.100860.tar.gz

Dependencies

Annotate this POD

Website

View/Report Bugs
Module Version: 1.100860   Source  

NAME ^

Getopt::Inherited - Handling inherited command-line options

VERSION ^

version 1.100860

SYNOPSIS ^

    use base 'Getopt::Inherited';

    use constant GETOPT => qw(foo=s);
    my $app = __PACKAGE__->new;
    $app->do_getopt;

DESCRIPTION ^

By subclassing this mixin class, your program gets the ability to inherit command-line option specifications. If you have several programs that share common code and common command-line options you don't want to have to write the command-line processing code again and again. Using this class you can abstract command-line options shared by your programs into a superclass from which your programs then inherit. Additionally, this class defines certain common command-line options itself.

You can also define defaults for command-line options.

METHODS ^

GETOPT

This accessor, which is accumulated across the class hierarchy using Data::Inherited, is used to define command-line options in the same format as Getopt::Long expects. This class, Getopt::Inherited, itself defines the following options:

    use constant GETOPT =>
        (qw(help man logfile|log=s verbose|v+ version|V));

GETOPT_DEFAULTS

This accessor, which is also accumulated across the class hierarchy, can be used to define defaults for the options given in GETOPT(). For example, to define a command-line option called <foo> which takes a string and to give it a default, you would use:

    use constant GETOPT => qw(foo=s);
    use constant GETOPT_DEFAULTS => (foo => 'my_default');

opt

This is a hash accessor per Class::Accessor::Complex in which the option hash is stored when it has been parsed and after default values have been applied.

usage

This method is called by do_getopt() after the command-line options have been processed with Getopt::Long's GetOptions. It uses Pod::Usage to display help information if there was either an error during processing, or if the --help or --man options have been given.

do_getopt

Does the actual command-line processing. It accumulates the values of GETOPT() across the hierarchy, parses them, calls usage() if necessary, applies GETOPT_DEFAULTS(), then assigns the finished options hash to opt().

INSTALLATION ^

See perlmodinstall for information and options on installing Perl modules.

BUGS AND LIMITATIONS ^

No bugs have been reported.

Please report any bugs or feature requests through the web interface at http://rt.cpan.org/Public/Dist/Display.html?Name=Getopt-Inherited.

AVAILABILITY ^

The latest version of this module is available from the Comprehensive Perl Archive Network (CPAN). Visit http://www.perl.com/CPAN/ to find a CPAN site near you, or see http://search.cpan.org/dist/Getopt-Inherited/.

The development version lives at http://github.com/hanekomu/Getopt-Inherited/. Instead of sending patches, please fork this project using the standard git and github infrastructure.

AUTHOR ^

  Marcel Gruenauer <marcel@cpan.org>

COPYRIGHT AND LICENSE ^

This software is copyright (c) 2010 by Marcel Gruenauer.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.

syntax highlighting: