From 067816423e1d927bf885b8fbe3ee343d56bf951c Mon Sep 17 00:00:00 2001 From: doy Date: Mon, 20 Apr 2009 22:39:11 -0500 Subject: docs for MooseX::NonMoose::Meta::Role::Constructor --- lib/MooseX/NonMoose/Meta/Role/Constructor.pm | 46 ++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) (limited to 'lib/MooseX/NonMoose') diff --git a/lib/MooseX/NonMoose/Meta/Role/Constructor.pm b/lib/MooseX/NonMoose/Meta/Role/Constructor.pm index cf7083c..24b6966 100644 --- a/lib/MooseX/NonMoose/Meta/Role/Constructor.pm +++ b/lib/MooseX/NonMoose/Meta/Role/Constructor.pm @@ -1,6 +1,39 @@ package MooseX::NonMoose::Meta::Role::Constructor; use Moose::Role; +=head1 NAME + +MooseX::NonMoose::Meta::Role::Constructor - constructor method trait for L + +=head1 SYNOPSIS + + package My::Moose; + use Moose (); + use Moose::Exporter; + + Moose::Exporter->setup_import_methods; + sub init_meta { + shift; + my %options = @_; + Moose->init_meta(%options); + Moose::Util::MetaRole::apply_metaclass_roles( + for_class => $options{for_class}, + metaclass_roles => ['MooseX::NonMoose::Meta::Role::Class'], + constructor_class_roles => + ['MooseX::NonMoose::Meta::Role::Constructor'], + ); + return Class::MOP::class_of($options{for_class}); + } + +=head1 DESCRIPTION + +This trait implements inlining of the constructor for classes using the +L metaclass trait; it has no effect unless +that trait is also used. See those docs and the docs for L +for more information. + +=cut + around can_be_inlined => sub { my $orig = shift; my $self = shift; @@ -30,4 +63,17 @@ sub _generate_instance { no Moose::Role; +=head1 AUTHOR + + Jesse Luehrs + +=head1 COPYRIGHT AND LICENSE + +This software is copyright (c) 2009 by Jesse Luehrs. + +This is free software; you can redistribute it and/or modify it under +the same terms as perl itself. + +=cut + 1; -- cgit v1.2.3-54-g00ecf