Hi,

I wonder why Role inherits methods from Class.

Even if a role is not a Class, we can override the can() method.

package Moose::Meta::Role;
our @ISA = qw(Class::MOP::Class);
sub isa{
    my($self, $class) = @_;
    return $self->SUPER::isa($class) && (ref $self || $self) ne
'Class::MOP::Class';
}

Now Role acts as Class, but not is-a Class.
-- 
Goro Fuji (gfx)

Reply via email to