Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
MouseX::App::Cmd(3)   User Contributed Perl Documentation  MouseX::App::Cmd(3)

NAME
       MouseX::App::Cmd	- Mashes up MouseX::Getopt and App::Cmd

VERSION
       version 0.30

SYNOPSIS
	   package YourApp::Cmd;
	   use Mouse;

	   extends qw(MouseX::App::Cmd);

	   package YourApp::Cmd::Command::blort;
	   use Mouse;

	   extends qw(MouseX::App::Cmd::Command);

	   has blortex => (
	       traits => [qw(Getopt)],
	       isa => 'Bool',
	       is  => 'rw',
	       cmd_aliases   =>	'X',
	       documentation =>	'use the blortext algorithm',
	   );

	   has recheck => (
	       traits => [qw(Getopt)],
	       isa => 'Bool',
	       is  => 'rw',
	       cmd_aliases => 'r',
	       documentation =>	'recheck all results',
	   );

	   sub execute {
	       my ( $self, $opt, $args ) = @_;

	       # you may ignore	$opt, it's in the attributes anyway

	       my $result = $self->blortex ? blortex() : blort();

	       recheck($result)	if $self->recheck;

	       print $result;
	   }

DESCRIPTION
       This module marries App::Cmd with MouseX::Getopt.

       Use it like App::Cmd advises (especially	see App::Cmd::Tutorial),
       swapping	App::Cmd::Command for MouseX::App::Cmd::Command.

       Then you	can write your moose commands as Mouse classes,	with
       MouseX::Getopt defining the options for you instead of "opt_spec"
       returning a Getopt::Long::Descriptive spec.

METHODS
   BUILD
       After calling "new" this	method is automatically	run, setting
       underlying App::Cmd attributes as per its documentation.

SEE ALSO
       App::Cmd
       App::Cmd::Tutorial
       MouseX::Getopt
       MouseX::App::Cmd::Command

AUTHOR
       xxxx x<section>xx'xx (Yuval Kogman) <nothingmuch@woobling.org>

COPYRIGHT AND LICENSE
       This software is	copyright (c) 2008 by Infinity Interactive, Inc..

       This is free software; you can redistribute it and/or modify it under
       the same	terms as the Perl 5 programming	language system	itself.

CONTRIBUTORS
       o   Mark	Gardner	<mjgardner@cpan.org>

       o   Mark	Gardner	<gardnerm@gsicommerce.com>

       o   Karen Etheridge <ether@cpan.org>

       o   Yuval Kogman	<nothingmuch@woobling.org>

       o   Graham Knop <haarg@haarg.org>

       o   Daisuke Maki	<dmaki@cpan.org>

       o   Offer Kaye <offer.kaye@gmail.com>

       o   vovkasm <vovkasm@gmail.com>

       o   Ken Crowell <oeuftete@gmail.com>

       o   brunov <vecchi.b@gmail.com>

       o   Mark	Gardner	<mjg+github@phoenixtrap.com>

       o   Guillermo Roditi <groditi@gmail.com>

       o   Dann	<techmemo@gmail.com>

       o   Michael Joyce <ubermichael@gmail.com>

perl v5.32.1			  2015-01-08		   MouseX::App::Cmd(3)

NAME | VERSION | SYNOPSIS | DESCRIPTION | METHODS | SEE ALSO | AUTHOR | COPYRIGHT AND LICENSE | CONTRIBUTORS

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=MouseX::App::Cmd&sektion=3&manpath=FreeBSD+13.0-RELEASE+and+Ports>

home | help