package Role
{
use Moose::Role;
before foo => sub {};
}
package Class
{
use Moose;
sub foo {}
with 'Role';
}
####
package Class
{
use Moose;
sub foo {}
before foo => sub {};
}
####
package Role
{
use Moose::Role;
override foo => sub {};
}
package Class
{
use Moose;
sub foo {}
with 'Role';
}
####
package Class
{
use Moose;
sub foo {}
override foo => sub {};
}
####
package Top
{
use Moose::Role;
sub foo {}
}
package Bottom
{
use Moose::Role;
override foo => sub {};
with 'Top';
}
package Class
{
use Moose;
with 'Bottom';
}
####
package Class
{
use Moose;
sub foo {};
override foo => sub {};
}