MooseX::Role::Cmd::Meta::Attribute::Trait.3pm

Langue: en

Autres versions - même langue

Version: 2008-10-20 (fedora - 05/07/09)

Section: 3 (Bibliothèques de fonctions)

NAME

MooseX::Role::Cmd::Meta::Attribute::Trait - Optional meta attribute trait for custom option names

SYNOPSIS

     package MyApp::Cmd::SomeScript;
     
     with 'MooseX::Role::Cmd';
     
     has 'basic'   => (
         isa             => 'Str',
         is              => 'rw',
     );
     
     has 'prefix'   => (
         traits          => [ 'CmdOpt' ],
         isa             => 'Str',
         is              => 'rw',
         cmdopt_prefix   => '-',
     );
     
     has 'rename'   => (
         traits          => [ 'CmdOpt' ],
         isa             => 'Str',
         is              => 'rw',
         cmdopt_name     => '+alt_name',
     );
     
     
     $cmd = MyApp::Cmd::SomeScript->new( basic => 'foo', prefix => 'bar', rename => 'foobar' );
     
     $cmd->run();
     
     # somescript --basic foo -prefix bar +alt_name foobar
 
 

DESCRIPTION

Provides some extra markup to help MooseX::Role::Cmd decide how to use command line parameters.

ATTRIBUTES


cmdopt_prefix

Forces the command prefix to be a certain character. This was introduced to allow parameters to be specified as ``-param'' or ``--param''

has_cmdopt_prefix

Test for attribute above

cmdopt_name

Forces the command options name to be the passed string. This was introduced to allow parameters to have a different name to the attribute.

This option will override the cmdopt_prefix attribute.

has_cmdopt_name

Test for attribute above

BUGS

All complex software has bugs lurking in it, and this module is no exception. If you find a bug please either email me, or add the bug to cpan-RT.

AUTHOR

Ian Sillitoe <ian.sillitoe@gmail.com>

SEE ALSO

The idea for this code was ripped kicking and screaming from MooseX::Getopt::Meta::Attribute::Trait This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.