У меня есть несколько различных сайтов, которые я загрузить данные и массажа в другие форматы (с помощью Perl) для использования в работе, которые все работают от одного сценария Perl вроде как так:Как я могу найти все пакеты, которые наследуются от пакета в Perl?
#! /usr/bin/perl
use strict;
use My::Package1;
use My::Package2;
my $p1 = My::Package1->new;
$p1->download;
my $p2 = My::Package2->new;
$p2->download;
и т.д. и так далее. На данный момент каждый My::Package
является его собственным пакетом; он не наследуется от базового пакета или чего-либо еще. Я планирую перезаписать их с помощью Moose
, и я надеялся, что вместо того, чтобы редактировать скрипт Perl, который запускает загрузку каждый раз при добавлении нового пакета, может быть способ найти пакеты, которые наследуются от базового пакета, а затем в цикле каждый экземпляр и сделать загрузку, вроде как так:
#! /usr/bin/perl
use strict;
for my $pname (packages_that_inherit_from("My::Package")) {
my $package = $pname->new;
$package->download;
}
Является ли это, или что-то Илке это, возможно?
ТИА
Почему бы не указать конфигурационный файл с именами используемых пакетов? –
Мне не хотелось добавлять новые пакеты в другой файл, будь то perl-скрипт или файл конфигурации. – Mark