我首先要说我在创建 Perl 模块方面一点经验都没有,所以如果我离开这里,我很抱歉。
假设我正在创建一些模块:
foo::bar
foo::bar::a
foo::bar::b
因为我不知道它们叫什么,所以我将 a.pm 和 b.pm 模块称为“子模块”,因为它们与 bar.pm 模块相关,但仍然可能有些独立。
所以我的一个 Perl 脚本可以使用 foo::bar::a,另一个脚本可以使用 foo::bar::b,也许我还有另一个脚本需要使用“a”和“b”中的函数。而不是这样说:
use foo::bar;
use foo::bar::a qw(one two);
use foo::bar::b;
我想做这样的事情:
use foo::bar qw(:a :b);
在我看来,这将使我的脚本可以访问 bar.pm、a.pm 和 b.pm 中的所有内容。
我测试了这样的东西,我显然错了。
这样的事情可能吗?我想我可以让 bar.pm 使用 a.pm 和 b.pm,然后使用“包装器”函数将调用传递给“子模块”,但似乎会有更简单的方法。