MooseX::App::Meta::Role::Class::Base - Meta class role for application base class
This meta class role will automatically be applied to the application base class. This documentation is only of interest if you intent to write plugins for MooseX-App.
Message class for generating error messages. Defaults to MooseX::App::Message::Block. The default can be overwritten by altering the _build_app_messageclass method.
_build_app_messageclass
Usually MooseX::App will take the package name of the base class as the namespace for commands. This namespace can be changed.
Usually MooseX::App will take the name of the calling wrapper script to construct the programm name in various help messages. This name can be changed via the app_base accessor.
my $command_moniker = $meta->command_class_to_command($command_class);
Returns the command moniker for the given command class name.
my $message = $meta->command_message( header => $header, type => 'error', body => $message );
Generates a message object (based on app_messageclass)
my $message = $meta->command_usage_attributes($metaclass,$headline);
Returns a message object containing the attribute documentation for a given meta class.
my @attributes = $meta->command_usage_attributes($metaclass);
Returns a list of attributes/command options.
my @attributes = $meta->command_usage_attributes_raw($metaclass);
Returns a list of attribute documentations for a given meta class.
my ($name,$description) = $meta->command_usage_attribute_detail($metaattribute);
Returns a name and description for a given meta attribute class.
my (@tags) = $meta->command_usage_attribute_tags($metaattribute);
Returns a list of tags for the given attribute.
my ($name,$description) = $meta->command_usage_attribute_name($metaattribute);
Returns a name for a given meta attribute class.
my @tags = $meta->command_usage_attribute_name($metaattribute);
Returns a list of tags for a given meta attribute class.
my @messages = $meta->command_usage_command($command_metaclass);
Returns a list of messages containing the documentation for a given command meta class.
my $message = $meta->command_usage_description($command_metaclass);
Returns a messages with the basic command description.
my @messages = $meta->command_usage_global();
Returns a list of messages containing the documentation for the application.
my $message = $meta->command_usage_header(); my $message = $meta->command_usage_header($command_name);
Returns a message containing the basic usage documentation
my $commands = $meta->app_commands;
Returns a hashref of command name and command class.
my @commands = $meta->command_get($user_command_input);
Returns a list of command names matching the user input
my $result = $meta->proto_command();
Returns the proto command command-line options.
my @getopt_options = $meta->proto_command($result_hashref);
Sets the GetOpt::Long options for the proto command
To install MooseX::App, copy and paste the appropriate command in to your terminal.
cpanm
cpanm MooseX::App
CPAN shell
perl -MCPAN -e shell install MooseX::App
For more information on module installation, please visit the detailed CPAN module installation guide.