MooseX :: Method :: Signatures должен иметь возможность получить ссылку на массив в качестве параметра и использовать его как обычный массив в методе, см. Псевдонимы ссылки в методе :: Подписи .
Используя код в документации в качестве примера, я написал:
package MethodSignatures;
use strict;
use warnings;
use Moose;
use MooseX::Method::Signatures;
method add_one(\@foo) {
$_++ for @foo;
}
my @bar = ( 1, 2, 3 );
MethodSignatures->add_one(\@bar); # @bar is now (2,3,4)
Однако, это не с:
')' expected whilst parsing signature near '@foo' in '\@foo' at d:/workspace/lib/tools/Perl/site/lib/MooseX/Method/Signatures/Meta/Method.pm line 199
Это потому, что я использую Perl 5?