The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

MooseX::App::Role - Define attributes in a role

SYNOPSIS

 package MyApp::Role::SomeRole;
 
 use Moose::Role; # optional
 use MooseX::App::Role;
 
 option 'testattr' => (
    isa             => 'rw',
    cmd_tags        => [qw(Important! Nice))],
 );

DESCRIPTION

When loading this package in a role you can use the cmd_tags attribute to document an attribute and declare attributes with the 'option' keyword.

Alternatively you can also just use attribute traits:

 has 'testattr' => (
    isa             => 'rw',
    traits          => ['AppOption'],
    cmd_tags        => [qw(Important! Nice))],
 );

All attibutes available in MooseX::Getopt::Meta::Attribute::Trait are also applied