674938550a4924677d5170cd5580473ca047f194
[gitmo/Moose.git] / lib / Moose / Meta / Role / Method.pm
1
2 package Moose::Meta::Role::Method;
3
4 use strict;
5 use warnings;
6
7 our $AUTHORITY = 'cpan:STEVAN';
8
9 use base 'Moose::Meta::Method';
10
11 sub _make_compatible_with {
12     my $self = shift;
13     my ($other) = @_;
14
15     # XXX: this is pretty gross. the issue here is blah blah blah
16     # see the comments in CMOP::Method::Meta and CMOP::Method::Wrapped
17     return $self unless $other->_is_compatible_with($self->_real_ref_name);
18
19     return $self->SUPER::_make_compatible_with(@_);
20 }
21
22 1;
23
24 # ABSTRACT: A Moose Method metaclass for Roles
25
26 __END__
27
28 =pod
29
30 =head1 DESCRIPTION
31
32 This is primarily used to mark methods coming from a role
33 as being different. Right now it is nothing but a subclass
34 of L<Moose::Meta::Method>.
35
36 =head1 BUGS
37
38 See L<Moose/BUGS> for details on reporting bugs.
39
40 =cut