1
幾個月前我開始使用Moose。如何將非OO模塊的函數包裝到駝鹿類中
我使用的一些非OO模塊只是由相關函數組成。我想在Moose類中使用這些函數作爲方法。可能正在這樣做最簡單的方法是像
#!/usr/bin/env perl
package FuncPack;
sub func_1 {
print "-> ", __PACKAGE__, "::func_1 called \n";
}
package FuncClass;
use Moose;
use namespace::autoclean;
sub func_1 {
my $self = shift ;
return FuncPack::func_1(@_);
}
__PACKAGE__->meta->make_immutable;
package main;
my $obj = FuncClass->new();
$obj->func_1(); # shall call FuncPack::func_1
對於一個功能,它可能是好的,但如果你有很多是重複任務和無聊。 有沒有更聰明的方法來完成它?可能有類似於MooseX :: NonMoose或MooseX :: InsideOut的擴展非Moose類的東西嗎?
感謝您的建議或提示。
謝謝。這就是我一直在尋找的。我的例子太簡單了 - 只是爲了清楚我需要什麼。到目前爲止,我還沒有碰過元件。我認爲是時候了;-)。 – katastrophos 2011-05-02 15:00:43