X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=gitmo%2FMooseX-StrictConstructor.git;a=blobdiff_plain;f=lib%2FMooseX%2FStrictConstructor.pm;h=aa81a45d191336c7b2c2637caee31f2b25715652;hp=e0246860259c4f75c53da23f96a9846e6954212c;hb=f00a034fe06bd519d9f64f2f942d4ff402d0ae87;hpb=c8a39fc4c1fd5da3a1262cee50e9fe65dc30d221 diff --git a/lib/MooseX/StrictConstructor.pm b/lib/MooseX/StrictConstructor.pm index e024686..aa81a45 100644 --- a/lib/MooseX/StrictConstructor.pm +++ b/lib/MooseX/StrictConstructor.pm @@ -6,19 +6,20 @@ use warnings; use Moose 0.94 (); use Moose::Exporter; use Moose::Util::MetaRole; -use MooseX::StrictConstructor::Role::Object; -use MooseX::StrictConstructor::Role::Meta::Class; -use MooseX::StrictConstructor::Role::Meta::Method::Constructor; - -Moose::Exporter->setup_import_methods( - class_metaroles => { - ($Moose::VERSION >= 1.9900 - ? (class => ['MooseX::StrictConstructor::Role::Meta::Class']) - : (constructor => ['MooseX::StrictConstructor::Role::Meta::Method::Constructor'])), - }, - base_class_roles => ['MooseX::StrictConstructor::Role::Object'], + +use MooseX::StrictConstructor::Trait::Class; +use MooseX::StrictConstructor::Trait::Method::Constructor;; + +my %metaroles = ( + class => ['MooseX::StrictConstructor::Trait::Class'], ); +$metaroles{constructor} + = ['MooseX::StrictConstructor::Trait::Method::Constructor'] + if $Moose::VERSION >= 1.9900; + +Moose::Exporter->setup_import_methods( class_metaroles => \%metaroles ); + 1; # ABSTRACT: Make your object constructors blow up on unknown attributes @@ -45,7 +46,7 @@ __END__ Simply loading this module makes your constructors "strict". If your constructor is called with an attribute init argument that your class -does not declare, then it calls "Carp::confess()". This is a great way +does not declare, then it calls Cthrow_error()>. This is a great way to catch small typos. =head2 Subverting Strictness