From: Shawn M Moore Date: Sat, 30 May 2009 22:27:44 +0000 (-0400) Subject: Add conflicted method metaclass X-Git-Tag: 0.80~36 X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=eec8ca8a08e97a7305d2827cc1f8fb1d66843639;p=gitmo%2FMoose.git Add conflicted method metaclass --- diff --git a/lib/Moose/Meta/Role.pm b/lib/Moose/Meta/Role.pm index abd6280..9ea98bd 100644 --- a/lib/Moose/Meta/Role.pm +++ b/lib/Moose/Meta/Role.pm @@ -17,6 +17,7 @@ our $AUTHORITY = 'cpan:STEVAN'; use Moose::Meta::Class; use Moose::Meta::Role::Method; use Moose::Meta::Role::Method::Required; +use Moose::Meta::Role::Method::Conflicted; use base 'Class::MOP::Module'; @@ -135,6 +136,12 @@ $META->add_attribute( default => 'Moose::Meta::Role::Method::Required', ); +$META->add_attribute( + 'conflicted_method_metaclass', + reader => 'conflicted_method_metaclass', + default => 'Moose::Meta::Role::Method::Conflicted', +); + ## some things don't always fit, so they go here ... sub add_attribute { diff --git a/lib/Moose/Meta/Role/Method/Conflicted.pm b/lib/Moose/Meta/Role/Method/Conflicted.pm new file mode 100644 index 0000000..e96fe6e --- /dev/null +++ b/lib/Moose/Meta/Role/Method/Conflicted.pm @@ -0,0 +1,51 @@ + +package Moose::Meta::Role::Method::Conflicted; + +use strict; +use warnings; + +use base qw(Moose::Meta::Role::Method::Required); + +our $VERSION = '0.79'; +$VERSION = eval $VERSION; +our $AUTHORITY = 'cpan:STEVAN'; + +__PACKAGE__->meta->add_attribute('roles' => (reader => 'roles')); + +1; + +__END__ + +=pod + +=head1 NAME + +Moose::Meta::Role::Method::Conflicted - A Moose metaclass for conflicted methods in Roles + +=head1 DESCRIPTION + +=head1 INHERITANCE + +C is a subclass of +L. + +=head1 BUGS + +All complex software has bugs lurking in it, and this module is no +exception. If you find a bug please either email me, or add the bug +to cpan-RT. + +=head1 AUTHOR + +Stevan Little Estevan@iinteractive.comE + +=head1 COPYRIGHT AND LICENSE + +Copyright 2006-2009 by Infinity Interactive, Inc. + +L + +This library is free software; you can redistribute it and/or modify +it under the same terms as Perl itself. + +=cut