NAME
Venus::Opts - Opts Class
ABSTRACT
Opts Class for Perl 5
SYNOPSIS
package main;
use Venus::Opts;
my $opts = Venus::Opts->new(
value => ['--resource', 'users', '--help'],
specs => ['resource|r=s', 'help|h'],
named => { method => 'resource' } # optional
);
# $opts->method; # $resource
# $opts->get('resource'); # $resource
# $opts->help; # $help
# $opts->get('help'); # $help
DESCRIPTION
This package provides methods for handling command-line arguments.
ATTRIBUTES
This package has the following attributes:
named
named(HashRef)
This attribute is read-write, accepts (HashRef)
values, is optional, and defaults to {}
.
parsed
parsed(HashRef)
This attribute is read-write, accepts (HashRef)
values, is optional, and defaults to {}
.
specs
specs(ArrayRef)
This attribute is read-write, accepts (ArrayRef)
values, is optional, and defaults to []
.
warns
warns(ArrayRef)
This attribute is read-write, accepts (ArrayRef)
values, is optional, and defaults to []
.
unused
unused(ArrayRef)
This attribute is read-write, accepts (ArrayRef)
values, is optional, and defaults to []
.
INHERITS
This package inherits behaviors from:
INTEGRATES
This package integrates behaviors from:
METHODS
This package provides the following methods:
default
default() (arrayref)
The default method returns the default value, i.e. [@ARGV]
.
Since 0.01
exists
exists(string $key) (boolean)
The exists method takes a name or index and returns truthy if an associated value exists.
Since 0.01
get
get(string $key) (any)
The get method takes a name or index and returns the associated value.
Since 0.01
name
name(string $key) (string | undef)
The name method takes a name or index and returns index if the the associated value exists.
Since 0.01
parse
parse(arrayref $args) (Venus::Opts)
The parse method optionally takes additional Getopt::Long parser configuration options and retuns the options found based on the object args
and spec
values.
Since 0.01
- parse example 2
-
# given: synopsis; my $parse = $opts->parse(['bundling']); # bless({...}, 'Venus::Opts')
reparse
reparse(arrayref $specs, arrayref $args) (Venus::Opts)
The reparse method resets the parser, calls the "parse" method and returns the result.
Since 2.55
- reparse example 1
-
# given: synopsis; my $reparse = $opts->reparse(['resource|r=s']); # bless({...}, 'Venus::Opts')
- reparse example 2
-
# given: synopsis; my $reparse = $opts->reparse(['resource|r=s'], ['bundling']); # bless({...}, 'Venus::Opts')
set
set(string $key, any $data) (any)
The set method takes a name or index and sets the value provided if the associated argument exists.
Since 0.01
unnamed
unnamed() (arrayref)
The unnamed method returns an arrayref of values which have not been named using the named
attribute.
Since 0.01
AUTHORS
Awncorp, awncorp@cpan.org
LICENSE
Copyright (C) 2022, Awncorp, awncorp@cpan.org
.
This program is free software, you can redistribute it and/or modify it under the terms of the Apache license version 2.0.