table of contents
MooseX::App::Command(3) | User Contributed Perl Documentation | MooseX::App::Command(3) |
NAME¶
MooseX::App::Command - Load command class metaclasses
SYNOPSIS¶
package MyApp::SomeCommand; use MooseX::App::Command; # Also loads Moose option 'testattr' => ( isa => 'rw', cmd_tags => [qw(Important! Nice))], ); command_short_description 'This is a short description'; command_long_description 'This is a much longer description yadda yadda'; command_usage 'script some_command --testattr 123';
DESCRIPTION¶
By loading this class into your command classes you import all required symbols, and enable all documentation features such as:
- Parsing command documentation from Pod
- Setting the command documentation manually via "command_short_description" and "command_long_description"
- Overriding the automated usage header with custom usage from Pod or via "command_usage"
- Adding the "cmd_tags", "cmd_flag", "cmd_aliases" and "cmd_type" attributes to options
FUNCTIONS¶
command_short_description¶
Set the short description. If not set this information will be taken from the Pod NAME or ABSTRACT section. Alternative this will be taken from the DistZilla ABSTRACT tag.
command_long_description¶
Set the long description. If not set this information will be taken from the Pod DESCRIPTION or OVERVIEW sections.
command_usage¶
Set custom usage. If not set this will be taken from the Pod SYNOPSIS or USAGE section. If those sections are not available, the usage information will be autogenerated.
command_strict¶
command_strict(0); # default OR command_strict(1);
If strict is enabled the program will terminate with an error message if superfluous/unknown positional parameters are supplied. If disabled all extra parameters will be copied to the extra_argv attribute.
The app_strict function in the app classes allows one to set this option globally.
2024-08-09 | perl v5.40.0 |