2
我想弄清楚如何使用駝鹿獲得方法代碼參考。如何使用駝鹿獲得方法參考
下面是什麼,我試圖做一個例子:
use Modern::Perl;
package Storage;
use Moose;
sub batch_store {
my ($self, $data) = @_;
... store $data ...
}
package Parser;
use Moose;
has 'generic_batch_store' => (isa => 'CodeRef');
sub parse {
my $self = shift;
my @buf;
... incredibly complex parsing code ...
$self->generic_batch_store(\@buf);
}
package main;
$s = Storage->new;
$p = Parser->new;
$p->generic_batch_store(\&{$s->batch_store});
$p->parse;
exit;
可能重複[如何將構造函數的代碼引用?](http://stackoverflow.com/questions/4229562/how-to-take-code-reference-to-constructor) – 2011-02-02 02:21:20
您的代碼正在調用批處理存儲方法,然後嘗試斷言返回值是代碼引用。請參閱上面的鏈接問題以瞭解如何創建將調用您的方法的代碼引用。 – 2011-02-02 02:23:57