From: Dave Rolsky Date: Wed, 14 Jul 2010 18:52:49 +0000 (-0500) Subject: Just pass metaroles to Moose::Exporter X-Git-Tag: v0.09~3 X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=5b66b6d4b70a18c011287412c56f34a321d79d87;p=gitmo%2FMooseX-StrictConstructor.git Just pass metaroles to Moose::Exporter --- diff --git a/lib/MooseX/StrictConstructor.pm b/lib/MooseX/StrictConstructor.pm index 5fb6d8c..28c71e7 100644 --- a/lib/MooseX/StrictConstructor.pm +++ b/lib/MooseX/StrictConstructor.pm @@ -3,52 +3,28 @@ package MooseX::StrictConstructor; use strict; use warnings; -our $VERSION = '0.08'; -$VERSION = eval $VERSION; - use Moose 0.94 (); use Moose::Exporter; use Moose::Util::MetaRole; use MooseX::StrictConstructor::Role::Object; use MooseX::StrictConstructor::Role::Meta::Method::Constructor; -Moose::Exporter->setup_import_methods(); - -sub init_meta { - shift; - my %p = @_; - - Moose->init_meta(%p); - - my $caller = $p{for_class}; - - Moose::Util::MetaRole::apply_metaroles( - for => $caller, - class_metaroles => { - constructor => [ - 'MooseX::StrictConstructor::Role::Meta::Method::Constructor'] - }, - ); - - Moose::Util::MetaRole::apply_base_class_roles( - for => $caller, - roles => - ['MooseX::StrictConstructor::Role::Object'], - ); - - return $caller->meta(); -} +Moose::Exporter->setup_import_methods( + class_metaroles => { + constructor => + ['MooseX::StrictConstructor::Role::Meta::Method::Constructor'] + }, + base_class_roles => ['MooseX::StrictConstructor::Role::Object'], +); 1; +# ABSTRACT: Make your object constructors blow up on unknown attributes + __END__ =pod -=head1 NAME - -MooseX::StrictConstructor - Make your object constructors blow up on unknown attributes - =head1 SYNOPSIS package My::Class; @@ -90,10 +66,6 @@ you can delete it from the hash reference of parameters. } } -=head1 AUTHOR - -Dave Rolsky, C<< >> - =head1 BUGS Please report any bugs or feature requests to @@ -102,11 +74,4 @@ interface at L. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes. -=head1 COPYRIGHT & LICENSE - -Copyright 2007-2008 Dave Rolsky, All Rights Reserved. - -This program is free software; you can redistribute it and/or modify -it under the same terms as Perl itself. - =cut