Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Perl: Общие вопросы > Moose ассоциативный массив обьектов


Автор: Ninazu 2.5.2013, 17:51
Люди добрый! Подскажите. Только начинаю изучать Perl. Как можно создать ассоциативный массив из объектов? Чтобы можно было дёргать методы таким образом
Код

print TEST->allLTS{'ONE'}->name;

Внутри процедуры создать массив получилось $task{$i}, но как это сделать с помощью Moose, чтобы он был доступен

Собственно мои попытки
Код

package LTS;{
use Moose;
    has 'name' => (is =>'rw', isa =>'Str',);
    has 'id'   => (is =>'rw', isa =>'Int',);
}
package TEST;{
use Moose;
    #has 'allLTS'  => (is =>'rw',isa =>'ArrayRef[LTask]',);
    sub Create {
        my $this = shift;
        my %task=();
        open(FILE, "<conf.ini");
            while (<FILE>) {
                my @spec = split(chr(9),$_);
                my $i=$spec[0];
                $task{$i}=LTS->new(name=>$_);
            }
        close(FILE);
    }
}

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)