package My::App;
use Mouse;
with 'MouseX::Getopt::Dashes';
# Will be called as --some-thingy, not --some_thingy
has 'some_thingy' => (
is => 'ro',
isa => 'Str',
default => 'foo'
);
# Will be called as --another_thingy, not --another-thingy
has 'another_thingy' => (
traits => [ 'Getopt' ],
cmd_flag => 'another_thingy'
is => 'ro',
isa => 'Str',
default => 'foo'
);
# use as MouseX::Getopt
This is a version of "MouseX::Getopt" which
converts underscores in attribute names to dashes when generating command line
flags.
You can selectively disable this on a per-attribute basis by
supplying a cmd_flag argument with the command flag you'd like for a given
attribute. No underscore to dash replacement will be done on the
"cmd_flag".