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

FreeBSD Manual Pages

  
 
  

home | help
MooX::Cmd::Role(3)    User Contributed Perl Documentation   MooX::Cmd::Role(3)

NAME
       MooX::Cmd::Role - MooX cli app commands do this

SYNOPSIS
   using role and want behavior	as MooX::Cmd
	 package MyFoo;

	 with MooX::Cmd::Role;

	 sub _build_command_execute_from_new { 1 }

	 package main;

	 my $cmd = MyFoo->new_with_cmd;

   using role and don't	execute	immediately
	 package MyFoo;

	 with MooX::Cmd::Role;
	 use List::MoreUtils qw/ first_idx /;

	 sub _build_command_base { "MyFoo::Command" }

	 sub _build_command_execute_from_new { 0 }

	 sub execute {
	     my	$self =	shift;
	     my	$chain_idx = first_idx { $self == $_ } @{$self->command_chain};
	     my	$next_cmd = $self->command_chain->{$chain_idx+1};
	     $next_cmd->owner($self);
	     $next_cmd->execute;
	 }

	 package main;

	 my $cmd = MyFoo->new_with_cmd;
	 $cmd->command_chain->[-1]->run();

   explicit expression of some implicit	stuff
	 package MyFoo;

	 with MooX::Cmd::Role;

	 sub _build_command_base { "MyFoo::Command" }

	 sub _build_command_execute_method_name	{ "run"	}

	 sub _build_command_execute_from_new { 0 }

	 package main;

	 my $cmd = MyFoo->new_with_cmd;
	 $cmd->command_chain->[-1]->run();

DESCRIPTION
       MooX::Cmd::Role is made for modern, flexible Moo	style to tailor	cli
       commands.

ATTRIBUTES
   command_args
       ARRAY-REF of args on command line

   command_chain
       ARRAY-REF of commands lead to this instance

   command_chain_end
       COMMAND accesses	the finally detected command in	chain

   command_name
       ARRAY-REF the name of the command lead to this command

   command_commands
       HASH-REF	names of other commands

   command_base
       STRING base of command plugins

   command_execute_method_name
       STRING name of the method to invoke to execute a	command, default
       "execute"

   command_execute_return_method_name
       STRING I	have no	clue what that is good for ...

   command_creation_method_name
       STRING name of constructor

   command_creation_chain_methods
       ARRAY-REF names of methods to chain for creating	object (from
       "command_creation_method_name")

   command_execute_from_new
       BOOL true when constructor shall	invoke "command_execute_method_name",
       false otherwise

METHODS
   new_with_cmd
       initializes by searching	command	line args for commands and invoke them

   execute_return
       returns the content of $self->{execute_return}

LICENSE	AND COPYRIGHT
       Copyright 2012-2013 Torsten Raudssus, Copyright 2013-2015 Jens Rehsack.

       This program is free software; you can redistribute it and/or modify it
       under the terms of either: the GNU General Public License as published
       by the Free Software Foundation;	or the Artistic	License.

       See <http://dev.perl.org/licenses/> for more information.

perl v5.24.1			  2015-05-29		    MooX::Cmd::Role(3)

NAME | SYNOPSIS | DESCRIPTION | ATTRIBUTES | METHODS | LICENSE AND COPYRIGHT

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

home | help