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