无法弄清楚推送到 Moose 数组的语法(我敢肯定这很明显而且我很愚蠢)。这是这个问题的延续。在我看来,对于我的具体情况,我需要的不仅仅是一个简单的值。尝试使用 Moose 式的方式来实现它(也许这是错误的?)但我显然做得不对。
use Moose::Role;
has 'tid_stack' => (
traits => ['Array'],
is => 'rw',
isa => 'ArrayRef[Str]',
default => sub { [] },
);
around 'process' => sub {
my $orig = shift;
my $self = shift;
my ( $template ) = @_;
$self->tid_stack->push( get_hrtid( $template ) );
$self->$orig(@_)
};