是否可以在多次调用around
MethodModier之间传递变量?例子(这不起作用,但希望传达我想做的事)
sub mysub { ... };
around 'mysub' => sub {
my $orig = shift;
my $self = shift;
my $value = get_value;
$self->orig(@_);
};
around 'mysub' => sub {
my $orig = shift;
my $self = shift;
my $value = shift;
my $output
= "sometext $value"
. $self->orig(@_);
. 'someothertext $value'
;
};
我最终希望将这些'arounds'放在可插拔的特性中,我不会真正知道哪些是预先加载的,但最终的输出将被整齐地格式化。
我可能认为这完全错了,所以欢迎其他建议。
答案 0 :(得分:0)
你要做的事情没有逻辑。
“around修饰符接收 原始方法作为其第一个参数, 然后是对象,最后是任何对象 传递给方法的参数。“
https://metacpan.org/pod/Moose::Manual::MethodModifiers#BEFORE-AFTER-AND-AROUND
答案 1 :(得分:0)