Practice of Programming

プログラム とか Linuxとかの話題

ExportTo 0.02リリース

で、久しぶりに思い出したので、コードをみたら、0.02を書きかけで放置してたので、リリースした。ついでに、use strict忘れてたので追加(ぉ


今回のリリースでは、

sub function{print "hoge"}

use ExportTo(NameSpace => {func1 => \&function, func2 => sub {print 1}});

NameSpace::func1(); # hoge
NameSpace::func2(); # 1

のような書き方ができるようになりました。関数定義してからexportしてやるんじゃなくて、コードリファレンスでもいけるようにしました。 perl -d のエラー IO::Scalar::FILENO がないのときに思いついたものでした。


余談ですが、、ExportToとか言ってますが、ImportToFrom(?)みたいなこともできたりもします。


簡単な例は下記のような感じ。

use Test::More "no_plan";
use ExportTo("HOGE" => ["Test::More::is"]);
HOGE::is(1,1);' 

何に使うかは知らない(ぉ