動的にuse
自分用のメモです。
設定ファイルなどにクラス名を記入し、そのクラスを動的にuseした場合にどうすれば良いか調べていたところ、次のような記事がありました。
perl でモジュールを use しますが、時としてクラス名を動的に生成して use したい時があります。
そんなときは以下のようにします。my $class = "Foo::Bar::$baz";
require, import instead of use
eval qq(require $class; import $class);
へ〜
色々試してみると、
my $class1 = 'Test\Hoge.pm'; my $class2 = 'Test::Hoge'; require $class1; my $hoge = $class2->new;
でもいけるっぽい。
こっちでもいいのかは不明。。。