Я просто начну с того, что у меня нет опыта создания модулей 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, а затем иметь функции «обертки», которые передают вызов на «подмодули», но кажется, что есть более простой способ.