我正在尝试理解 Moose::Exporter,但无论我尝试什么,手册中的示例几乎都不起作用。
package HasRw;
use Moose;
use Moose::Exporter;
Moose::Exporter->setup_import_methods(
with_meta => ['has_rw'],
also=>'Moose');
sub has_rw {
my ( $meta, $name, %options ) = @_;
$meta->add_attribute(
$name,
is => 'rw',
%options,
);
}
1;
package Another;
use Moose;
has_rw 'foo';
package main;
my $ww = new Another(foo=>"bar");
这是在文件中example.pl
;当我尝试用 perl 运行它时,我收到了这个错误信息
在 example.pl 第 23 行,“has_rw 'foo'”附近的操作员预期的位置找到字符串
(你需要预先声明 has_rw 吗?) example.pl 第 23 行,“has_rw 'foo'”附近的语法错误
由于编译错误,example.pl 的执行被中止。
我究竟做错了什么?