1package Moose::Meta::Role::Method::Conflicting; 2our $VERSION = '2.2201'; 3 4use strict; 5use warnings; 6 7use Moose::Util; 8 9use parent 'Moose::Meta::Role::Method::Required'; 10 11__PACKAGE__->meta->add_attribute('roles' => ( 12 reader => 'roles', 13 required => 1, 14 Class::MOP::_definition_context(), 15)); 16 17sub roles_as_english_list { 18 my $self = shift; 19 Moose::Util::english_list( map { q{'} . $_ . q{'} } @{ $self->roles } ); 20} 21 221; 23 24# ABSTRACT: A Moose metaclass for conflicting methods in Roles 25 26__END__ 27 28=pod 29 30=encoding UTF-8 31 32=head1 NAME 33 34Moose::Meta::Role::Method::Conflicting - A Moose metaclass for conflicting methods in Roles 35 36=head1 VERSION 37 38version 2.2201 39 40=head1 DESCRIPTION 41 42=head1 INHERITANCE 43 44C<Moose::Meta::Role::Method::Conflicting> is a subclass of 45L<Moose::Meta::Role::Method::Required>. 46 47=head1 METHODS 48 49=head2 Moose::Meta::Role::Method::Conflicting->new(%options) 50 51This creates a new type constraint based on the provided C<%options>: 52 53=over 4 54 55=item * name 56 57The method name. This is required. 58 59=item * roles 60 61The list of role names that generated the conflict. This is required. 62 63=back 64 65=head2 $method->name 66 67Returns the conflicting method's name, as provided to the constructor. 68 69=head2 $method->roles 70 71Returns the roles that generated this conflicting method, as provided to the 72constructor. 73 74=head2 $method->roles_as_english_list 75 76Returns the roles that generated this conflicting method as an English list. 77 78=head1 BUGS 79 80See L<Moose/BUGS> for details on reporting bugs. 81 82=head1 AUTHORS 83 84=over 4 85 86=item * 87 88Stevan Little <stevan@cpan.org> 89 90=item * 91 92Dave Rolsky <autarch@urth.org> 93 94=item * 95 96Jesse Luehrs <doy@cpan.org> 97 98=item * 99 100Shawn M Moore <sartak@cpan.org> 101 102=item * 103 104יובל קוג'מן (Yuval Kogman) <nothingmuch@woobling.org> 105 106=item * 107 108Karen Etheridge <ether@cpan.org> 109 110=item * 111 112Florian Ragwitz <rafl@debian.org> 113 114=item * 115 116Hans Dieter Pearcey <hdp@cpan.org> 117 118=item * 119 120Chris Prather <chris@prather.org> 121 122=item * 123 124Matt S Trout <mstrout@cpan.org> 125 126=back 127 128=head1 COPYRIGHT AND LICENSE 129 130This software is copyright (c) 2006 by Infinity Interactive, Inc. 131 132This is free software; you can redistribute it and/or modify it under 133the same terms as the Perl 5 programming language system itself. 134 135=cut 136