NAME
MooseX::App::ParsedArgv - Parses @ARGV
SYNOPSIS
use MooseX::App::ParsedArgv;
my $argv = MooseX::App::ParsedArgv->instance;
foreach my $option ($argv->available('option')) {
say "Parsed ".$option->key;
}
DESCRIPTION
This is a helper class that holds all options parsed from @ARGV. It is implemented as a singleton. Unless you are developing a MooseX::App plugin you usually do not need to interact with this class.
METHODS
new
Create a new MooseX::App::ParsedArgv instance. Needs to be called as soon as possible.
instance
Get the current MooseX::App::ParsedArgv instance. If there is no instance a new one will be created.
argv
Accessor for the initinal @ARGV.
hints
ArrayRef of attributes that tells the parser which attributes should be regarded as flags without values.
first_argv
Shifts the current first element from @ARGV.
available
my @options = $self->available($type);
OR
my @options = $self->available();
Returns an array of all parsed options or parameters that have not yet been consumed. The array elements will be MooseX::App::ParsedArgv::Element objects.
consume
my $option = $self->consume($type);
OR
my $option = $self->consume();
Returns the first option/parameter of the local @ARGV that has not yet been consumed as a MooseX::App::ParsedArgv::Element object.
elements
Returns all parsed options and parameters.
extra
Returns an array reference of unconsumed positional parameters and extra values.