MooseX::OneArgNew man page on Fedora

Man page or keyword search:  
man Server   31170 pages
apropos Keyword Search (all sections)
Output format
Fedora logo
[printable version]

MooseX::OneArgNew(3)  User Contributed Perl Documentation MooseX::OneArgNew(3)

NAME
       MooseX::OneArgNew - teach ->new to accept single, non-hashref arguments

VERSION
       version 0.002

SYNOPSIS
       In our class definition:

	 package Delivery;
	 use Moose;
	 with('MooseX::OneArgNew' => {
	   type	    => 'Existing::Message::Type',
	   init_arg => 'message',
	 });

	 has message => (isa => 'Existing::Message::Type', required => 1);

	 has to => (
	   is	=> 'ro',
	   isa	=> 'Str',
	   lazy => 1,
	   default => sub {
	     my ($self) = @_;
	     $self->message->get('To');
	   },
	 );

       When making a message:

	 # The traditional way:

	 my $delivery = Delivery->new({ message => $message });
	 # or
	 my $delivery = Delivery->new({ message => $message, to => $to });

	 # With one-arg new:

	 my $delivery = Delivery->new($message);

DESCRIPTION
       MooseX::OneArgNew lets your constructor take a single argument, which
       will be translated into the value for a one-entry hashref.  It is a
       parameterized role with two parameters:

       type
	   The Moose type that the single argument must be for the one-arg
	   form to work.  This should be an existing type, and may be either a
	   string type or a MooseX::Type.

       init_arg
	   This is the string that will be used as the key for the hashref
	   constructed from the one-arg call to new.

   WARNINGS
       You can apply MooseX::OneArgNew more than once, but if more than one
       application's type matches a single argument to "new", the behavior is
       undefined and likely to cause bugs.

       It would be a very bad idea to supply a type that could accept a normal
       hashref of arguments to "new".

AUTHOR
       Ricardo Signes <rjbs@cpan.org>

COPYRIGHT AND LICENSE
       This software is copyright (c) 2011 by Ricardo Signes.

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

perl v5.14.1			  2011-06-15		  MooseX::OneArgNew(3)
[top]

List of man pages available for Fedora

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net