The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

App::CLI::Command - Base class for App::CLI commands

SYNOPSIS

    package MyApp::List;
    use base qw(App::CLI::Command);

    use constant options => (
        'verbose'   => 'verbose',
        'n|name=s'  => 'name',
    );

    sub run {
        my ( $self, $arg ) = @_;

        print "verbose" if $self->{verbose};

        my $name = $self->{name}; # get arg following long option --name

        # anything you want this command do
    }

    # See App::CLI for information of how to invoke (sub)command.

DESCRIPTION

subcommand()

    return old genre subcommand of $self;

cascading()

Return instance of cascading subcommand invoked if it was listed in your constant subcommands.

cascadable()

Return package name of subcommand if the subcommand invoked is in your constant subcommands, otherwise, return undef.

app

Return the object referring to the current app.

brief_usage ($file)

Display a one-line brief usage of the command object. Optionally, a file could be given to extract the usage from the POD.

usage ($want_detail)

Display usage. If $want_detail is true, the DESCRIPTION section is displayed as well.

loc_text $text

Localizes the body of (formatted) text in $text and returns the localized version.

filename

Return the filename for the command module.

SEE ALSO

App::CLI, Getopt::Long

AUTHORS

Chia-liang Kao <clkao@clkao.org>

Cornelius Lin <cornelius.howl@gmail.com>

Shelling <navyblueshellingford@gmail.com>

Paul Cochrane <paul@liekut.de> (current maintainer)

COPYRIGHT

Copyright 2005-2006 by Chia-liang Kao <clkao@clkao.org>.

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

See http://www.perl.com/perl/misc/Artistic.html