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