note
tobyink
<p>It's claiming that roles don't support array references for <c>around</c> method modifiers... i.e. Moose stuff. It's saying that this doesn't work...</p>
<c>
use v5.14;
package Local::Role {
use Moose::Role;
around [qw/ a b /] => sub { say "constant access" };
}
package Local::Class {
use Moose; with 'Local::Role';
use constant { a => 1, b => 2 };
}
# Should print "constant access" twice
Local::Class->a;
Local::Class->b;
</c>
<p>On my machine, the above <em>does</em> work though, so it's likely that you're running a very old Moose/Class::MOP. Judging from [mod://Moose::Manual::Delta] this may have been introduced in Moose 0.95; current version is 2.0604.</p>
<div class="pmsig"><div class="pmsig-757127">
<small><small><tt>package Cow { use Moo; has name => (is => 'lazy', default => sub { 'Mooington' }) } say Cow->new->name</tt></small></small>
</div></div>
1017809
1017824