In the below, the foo() from Bar cannot fulfill the requires of Baz. Anything
I'm missing? (I know that there's an easy workaround of an explicit "sub foo()
{ $_[0]->thing()->foo() }" in Bar; it's simply not what one would prefer.)
package Foo;
use Moose::Role;
sub foo {};
package Bar;
use Moose::Role;
has thing => (
is => 'ro',
isa => 'Foo',
handles => [ 'foo' ],
);
package Baz;
use Moose::Role;
requires 'foo';
package Quux;
use Moose;
with qw< Bar Baz >;
